ALTER TABLE `table1` ADD FOREIGN KEY (`FK_table2`) REFERENCES `table2`(`ID`) ON DELETE RESTRICT ON UPDATE RESTRICT; Show
Cara Menghapus Foreign Key PHPMyAdminPerbesar Iluatrasi mengelola basis data. Foto: Christina Morillo/PexelsHubungan di Access membantu Anda mengombinasikan data dari dua tabel berbeda. Setiap hubungan terdiri dari bidang-bidang dalam dua tabel dengan data yang bersesuaian. Sebagai contoh, Anda mungkin memiliki bidang IDProduk di tabel Produk dan di tabel DetailPesanan. Setiap catatan dalam tabel DetailPesanan memiliki IDProduk yang bersesuaian dengan catatan di tabel Produk dengan IDProduk yang sama. Ketika menggunakan tabel terkait dalam kueri, hubungan memungkinkan Access menentukan catatan mana dari setiap tabel akan digabungkan dalam kumpulan hasil. Hubungan juga dapat membantu mencegah kehilangan data, dengan mencegah data yang dihapus tidak disinkronisasi, dan hal ini disebut integritas referensial. Sebelum menggunakan hubungan, pastikan Anda paham konsep yang mendasarinya. Untuk informasi selengkapnya, lihat artikel Panduan tentang hubungan tabel dan Mulai menggunakan hubungan tabel. Di artikel iniGambaran UmumDi database Access, Anda membuat hubungan tabel menggunakan salah satu metode berikut:
Saat Anda membuat hubungan di antara tabel-tabel, bidang umum tidak perlu memiliki nama yang sama, meskipun sering kali bidang tersebut memiliki nama yang sama. Bidang yang bersesuaian harus mempunyai tipe data yang sama. Namun, jika bidang kunci utama adalah bidang NomorOtomatis, bidang kunci asing bisa juga bidang Angka jika properti UkuranBidang dari kedua bidang sama. Misalnya, Anda bisa mencocokkan bidang NomorOtomatis dan bidang Angka jika properti UkuranBidang kedua bidang adalah Bilangan Bulat Panjang. Saat kedua bidang umum adalah bidang Angka, mereka harus memiliki pengaturan properti UkuranBidang yang sama. Membuat hubungan tabel dengan menggunakan jendela Hubungan
Membuat hubungan tabel dengan menggunakan panel Daftar Bidang untuk menambahkan bidangAnda bisa menambahkan bidang ke tabel yang sudah ada, yang terbuka dalam tampilan Lembar Data dengan menyeretnya dari panel Daftar Bidang. Panel Daftar Bidang memperlihatkan bidang yang tersedia dalam tabel terkait dan juga bidang yang tersedia di tabel lainnya dalam database. Saat Anda menyeret bidang dari tabel "lain" (tidak terkait) lalu menyelesaikan Panduan Pencarian, hubungan satu ke banyak otomatis dibuat antara tabel dalam panel Daftar Bidang dan tabel yang menjadi tujuan Anda menyeret bidang. Hubungan ini, yang dibuat oleh Access, tidak menerapkan integritas referensial secara default. Untuk menerapkan integritas referensial, Anda harus mengedit hubungan. Baca bagian untuk informasi selengkapnya. Membuka tabel dalam Tampilan Lembar Data
Membuka panel Daftar Bidang
Panel Daftar Bidang memperlihatkan semua tabel lainnya dalam database Anda, yang dikelompokkan ke dalam kategori. Ketika Anda bekerja dengan tabel dalam tampilan Lembar Data, Access menampilkan bidang salah satu dari dua kategori dalam panel Daftar Bidang: Bidang yang tersedia dalam tabel terkait dan Bidang yang tersedia di tabel lain. Kategori pertama mencantumkan semua tabel yang mempunyai hubungan dengan tabel yang sedang Anda kerjakan. Kategori kedua mencantumkan semua tabel yang tidak memiliki hubungan dengan tabel Anda. Dalam panel Daftar Bidang, saat Anda mengklik tanda plus (+) di samping nama tabel, Anda melihat daftar semua bidang yang tersedia di tabel itu. Untuk menambahkan bidang ke tabel Anda, seret bidang yang Anda inginkan dari panel Daftar Bidang ke tabel dalam tampilan Lembar Data. Menambahkan bidang dan membuat hubungan dari panel Daftar Bidang
Saat Anda menyeret bidang dari tabel "lain" (tidak terkait) lalu menyelesaikan Panduan Pencarian, hubungan satu ke banyak otomatis dibuat antara tabel dalam panel Daftar Bidang dan tabel yang menjadi tujuan Anda menyeret bidang. Hubungan ini, yang dibuat oleh Access, tidak menerapkan integritas referensial secara default. Untuk menerapkan integritas referensial, Anda harus mengedit hubungan. Baca bagian untuk informasi selengkapnya. Mengedit hubunganAnda mengubah hubungan dengan memilihnya dalam jendela Hubungan lalu mengeditnya.
Kotak dialog Edit Hubungan muncul. Membuka kotak dialog Edit Hubungan
Mengatur tipe gabunganSaat Anda mendefinisikan hubungan tabel, fakta tentang hubungan menginformasikan desain kueri Anda. Misalnya, jika Anda menetapkan hubungan antara dua tabel, lalu Anda membuat kueri yang menggunakan dua tabel tersebut, Access otomatis memilih bidang pencocokan default berdasarkan bidang yang ditentukan dalam hubungan. Anda bisa mengesampingkan nilai default awal tersebut dalam kueri Anda, tapi nilai yang diberikan oleh hubungan akan sering terbukti menjadi nilai yang benar. Karena mencocokkan dan menyatukan data dari lebih dari satu tabel adalah yang akan Anda sering lakukan di semua database kecuali yang paling sederhana, pengaturan default dengan membuat hubungan bisa menghemat waktu dan menguntungkan. Beberapa kueri tabel menggabungkan informasi dari lebih dari satu tabel dengan mencocokkan nilai dalam bidang umum. Operasi yang melakukan pencocokan dan penggabungan disebut gabungan. Sebagai contoh, anggaplah Anda ingin menampilkan pesanan pelanggan. Anda membuat kueri yang menggabungkan tabel Pelanggan dan tabel Pesanan pada bidang ID Pelanggan. Hasil kueri berisi informasi pelanggan dan informasi pesanan hanya untuk baris yang ditemukan kecocokan. Salah satu nilai yang bisa Anda tentukan untuk setiap hubungan adalah tipe gabungan. Tipe gabungan memberitahukan Access catatan mana yang disertakan dalam hasil kueri. Misalnya, pertimbangkan lagi kueri yang menggabungkan tabel Pelanggan dengan tabel Pesanan pada bidang umum yang mewakili ID Pelanggan. Dengan menggunakan tipe gabungan default ini (disebut gabungan dalam), kueri hanya mengembalikan baris Pelanggan dan baris Pesanan di mana kolom umum (yang disebut bidang gabungan) sama. Namun, anggap Anda ingin menyertakan seluruh Pelanggan — meskipun yang belum melakukan pemesanan. Untuk menyelesaikan ini, Anda harus mengubah tipe gabungan dari gabungan dalam menjadi gabungan kiri luar. Gabungan kiri luar memberikan semua baris dalam tabel di sisi kiri hubungan dan hanya baris yang cocok dalam tabel di sisi kanan. Gabungan kanan luar mengembalikan seluruh baris di kanan dan hanya yang cocok ada di kiri. Catatan: Dalam kasus ini, "kiri" dan "kanan" merujuk pada posisi tabel dalam kotak dialog Edit Hubungan, bukan jendela Hubungan. Anda harus memikirkan tentang hasil yang paling Anda akan inginkan dari kueri yang menggabungkan tabel dalam hubungan ini, lalu mengatur tipe gabungan. Mengatur tipe gabungan
Tabel berikut (menggunakan tabel Pelanggan dan Pesanan) memperlihatkan tiga pilihan yang ditampilkan dalam kotak dialog Properti Gabungan, tipe gabungan yang digunakan, dan apakah semua baris atau baris yang cocok disertakan untuk tiap tabel. Pilihan Gabungan relasional Tabel kiri Tabel kanan 1. Hanya mencakup baris di mana bidang yang tergabung dari kedua tabel adalah sama. Gabungan dalam Baris yang cocok Baris yang cocok 2. Mencakup SEMUA rekaman dari 'Pelanggan' dan hanya rekaman dari 'Pesanan' yang bidang tergabungnya sama. Gabungan kiri luar Semua baris Baris yang cocok 3. Mencakup SEMUA rekaman dari 'Pesanan' dan hanya rekaman dari 'Pelanggan' yang bidang tergabungnya sama. Gabungan kanan luar Baris yang cocok Semua baris Ketika Anda memilih opsi 2 atau opsi 3, sebuah panah diperlihatkan pada garis hubungan. Panah ini mengarah ke sisi hubungan yang hanya memperlihatkan baris yang cocok. Membuat perubahan dalam kotak dialog Properti Penggabung
Menerapkan integritas referensialTujuan integritas referensial adalah untuk mencegah catatan orphan, yaitu catatan yang mereferensi ke catatan lain yang tidak ada lagi. Anda menerapkan integritas referensial dengan mengaktifkannya untuk hubungan tabel. Begitu diterapkan, Access menolak setiap operasi yang akan melanggar integritas referensial untuk hubungan tabel itu. Ini berarti bahwa Access akan menolak pembaruan yang mengubah target referensi dan penghapusan yang menghapus target referensi. Agar Access menyebarluaskan pembaruan referensial dan penghapusan sehingga semua baris yang berhubungan turut diubah, baca bagian . Mengaktifkan atau menonaktifkan integritas referensial
Jika Anda menerapkan integritas referensial, aturan berikut berlaku:
Mengatur opsi bertingkatAnda mungkin menghadapi situasi ketika Anda mempunyai kebutuhan valid untuk mengubah nilai pada sisi hubungan "satu" Dalam kasus tersebut, Anda membutuhkan Access untuk otomatis memperbarui semua baris yang terpengaruh sebagai bagian dari operasi tunggal. Dengan cara itu, pembaruan selesai secara penuh sehingga database Anda tidak dibiarkan dalam kondisi tidak konsisten — dengan beberapa baris diperbarui dan beberapa tidak. Access membantu Anda menghindari masalah ini dengan mendukung opsi Pembaruan Bertingkat Bidang Terkait. Ketika Anda memberlakukan integritas referensial dan memilih opsi Pembaruan Bertingkat Bidang Terkait, lalu Anda memperbarui kunci utama, Access otomatis memperbarui semua bidang yang mereferensikan kunci utama. Anda mungkin juga perlu menghapus baris atau semua catatan yang terkait — sebagai contoh, catatan pengirim dan semua pesanan yang terkait dengan pengirim itu. Untuk alasan ini, Access mendukung opsi Penghapusan Bertingkat Catatan Terkait. Ketika Anda memberlakukan integritas referensial dan memilih kotak centang Penghapusan Bertingkat Catatan Terkait, Access otomatis menghapus semua catatan yang mereferensikan kunci utama ketika Anda menghapus rekaman yang berisi kunci utama. Mengaktifkan atau menonaktifkan pembaruan bertingkat dan/atau penghapusan bertingkat
Catatan: Jika kunci utama adalah bidang NomorOtomatis, memilih kotak centang Pembaruan Bertingkat Bidang Terkait tidak akan memiliki efek, karena Anda tidak bisa mengubah nilai dalam bidang NomorOtomatis. Menghapus hubungan tabelPenting: Ketika Anda menghapus hubungan, Anda juga menghapus integritas referensial yang mendukung hubungan itu, jika diaktifkan. Sebagai akibatnya, Access tidak lagi mencegah pembuatan catatan orphan secara otomatis pada sisi "banyak" dari suatu hubungan. Untuk menghapus hubungan tabel, Anda harus menghapus garis hubungan dalam jendela Hubungan. Tempatkan kursor sehingga menunjuk ke garis hubungan lalu klik garis. Garis hubungan terlihat lebih tebal ketika dipilih. Dengan garis hubungan dipilih, tekan DELETE.
Catatan: Jika salah satu tabel yang digunakan dalam hubungan tabel sedang digunakan, mungkin oleh orang atau proses lain, atau dalam objek database terbuka (seperti formulir), Anda tidak akan bisa menghapus hubungan. Anda harus menutup setiap objek terbuka yang menggunakan tabel ini sebelum Anda mencoba menghapus hubungan. (adsbygoogle = window.adsbygoogle || []).push({}); Membuat, mengedit, atau menghapus hubungan di aplikasi web AccessAda perbedaan penting ketika bekerja dengan hubungan dalam aplikasi web Access. Membuat hubunganJendela Hubungan tidak tersedia dalam aplikasi web Access. Sebagai ganti membuat hubungan dalam aplikasi web Access, buat bidang pencarian yang mendapatkan nilai dari bidang terkait dalam tabel yang lain. Misalnya, katakanlah Anda memiliki tabel Karyawan dan ingin menambahkan pencarian ke tabel Kawasan sehingga Anda bisa memperlihatkan di kawasan mana setiap karyawan bekerja. Catatan: Bidang yang akan digunakan pencarian Anda sebagai sumber nilai harus sudah ada sebelum Anda membuat bidang pencarian. Berikut ini cara Anda membuat bidang pencarian di aplikasi web Access:
Mengedit hubunganJendela Hubungan tidak tersedia di aplikasi web Access. Gunakan bidang dalam satu tabel sebagai sumber (bidang pencarian) untuk nilai dalam bidang yang terkait di tabel lain.
|