Isi kandungan:
Takrif - Apa arti Asing?
Kunci asing ialah lajur atau kumpulan lajur dalam jadual pangkalan data relasi yang menyediakan pautan antara data dalam dua jadual. Ia bertindak sebagai rujukan merentas antara jadual kerana ia merujuk kepada kunci utama jadual lain, dengan itu mewujudkan hubungan di antara mereka.
Kebanyakan jadual dalam sistem pangkalan data relasi mematuhi konsep utama asing. Dalam pangkalan data kompleks dan gudang data, data dalam domain mesti ditambah di beberapa jadual, dengan itu mengekalkan hubungan di antara mereka. Konsep integriti rujukan diperoleh daripada teori utama asing.
Kunci asing dan pelaksanaannya lebih kompleks daripada kunci utama.
Techopedia menerangkan Kunci Asing
Untuk mana-mana lajur yang bertindak sebagai kunci asing, nilai sepadan harus wujud dalam jadual pautan. Penjagaan khusus mesti diambil semasa memasukkan data dan mengeluarkan data dari lajur utama asing, sebagai pemadaman atau penyisihan yang cuai mungkin memusnahkan hubungan antara kedua-dua jadual.
Sebagai contoh, jika terdapat dua jadual, pelanggan dan pesanan, hubungan boleh dibuat di antara mereka dengan memperkenalkan kunci asing ke dalam jadual pesanan yang merujuk kepada ID pelanggan dalam jadual pelanggan. Lajur ID pelanggan wujud dalam jadual pelanggan dan pesanan. ID pelanggan dalam jadual pesanan menjadi kunci asing, merujuk kepada kunci utama dalam jadual pelanggan. Untuk memasukkan kemasukan ke dalam jadual pesanan, kekangan utama asing mesti dipenuhi. Percubaan untuk memasuki ID pelanggan yang tidak hadir dalam jadual pelanggan gagal, dengan itu mengekalkan integriti rujukan jadual.
Beberapa tindakan rujukan berkaitan dengan tindakan utama asing termasuk yang berikut:
- Cascade: Apabila baris dalam jadual induk dipadamkan, lajur kunci asing yang sepadan dalam jadual kanak-kanak juga dipadamkan, mencipta pemadaman cascading.
- Tetapkan Null: Apabila baris dirujuk dalam jadual induk dipadam atau dikemas kini, nilai utama asing dalam baris rujuk ditetapkan menjadi null untuk mengekalkan integriti rujukan.
- Pencetus: Tindakan rujukan biasanya dilaksanakan sebagai pencetus. Dalam banyak cara tindakan utama asing adalah serupa dengan pencetus yang ditentukan pengguna. Untuk memastikan pelaksanaan yang sepatutnya, tindakan rujukan yang diperintahkan kadangkala digantikan dengan pencetus yang ditetapkan pengguna yang setaraf dengannya.
- Tetapkan Lalai: Tindakan rujukan ini adalah serupa dengan "menetapkan null." Nilai utama asing dalam jadual kanak-kanak ditetapkan ke nilai lajur lalai apabila baris dirujuk dalam jadual induk dipadam atau dikemas kini.
- Hadkan: Ini adalah tindakan rujukan biasa yang berkaitan dengan kunci asing. Nilai dalam jadual induk tidak boleh dihapuskan atau dikemas kini selagi ia dirujuk oleh kunci asing dalam jadual lain.
- Tindakan Tiada: Tindakan rujukan ini adalah serupa dengan fungsi "tindakan sekat" kecuali pengecualian tidak dilakukan hanya selepas cuba mengubah jadual.