Apa kunci asing dalam database relasional?

Kunci asing dalam tabel dalam basis data relasional menemukan informasi dalam tabel terkait.

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.