Apa kunci asing dalam database relasional?
Contoh sederhana
Contoh sederhana kunci asing dalam database adalah tabel utama "Siswa" (Siswa) dengan Student_ID sebagai kunci utamanya. Di tabel sekunder terkait "Course_Enrollment" (Course_Matriculation) dengan Course_ID sebagai kunci utama, untuk setiap kursus di mana siswa telah terdaftar, kunci asing Student_ID dari "Mahasiswa" tabel muncul.
Aturan integritas referensial
Aturan integritas referensial menyatakan bahwa nilai kunci asing non-null dalam tabel sekunder harus merujuk ke nilai kunci primer dalam tabel utama dalam database. Dalam contoh Langkah 1, tidak akan masuk akal dalam basis data untuk meminta siswa mendaftar di suatu kursus ketika tidak ada informasi tentang siswa dalam tabel "Pelajar". Aturan ini memberlakukan konsistensi dalam database.
Menghilangkan eliminasi
Setiap catatan sekunder dalam hubungan kunci asing harus memiliki rekaman primer yang sesuai sesuai dengan aturan integritas referensial. Penghapusan kaskade harus terjadi setiap kali catatan di tabel utama dihapus, yang juga menghapus semua catatan yang sesuai dari database. Dalam contoh di Langkah 1, menghapus siswa dari tabel Siswa dalam basis data juga akan menghapus semua kemunculan rekaman pendaftaran siswa dalam tabel Course_Enrollment.