Kunci adalah elemen mendasar dari basis data relasional karena mereka membangun hubungan antara sepasang tabel dan memastikan setiap catatan dalam tabel diidentifikasi secara unik. Kunci memiliki makna yang lebih khusus daripada membangun hubungan; mereka juga membantu dengan Integritas Referensial dan mereka adalah komponen utama integritas tingkat tabel. Tabel menyimpan sejumlah besar data di dalamnya yang biasanya mencapai ribuan catatan yang semuanya tidak disortir dan tidak terorganisir. Mengambil data tertentu dari berbagai catatan itu terkadang sulit atau terkadang tidak mungkin. Di sinilah Kunci datang ke gambar. Di sini, kita akan mempelajari tentang dua kunci yang sangat penting dari skema basis data relasional dan perbedaan di antaranya: Kunci primer dan Kunci Asing.
Kunci utama adalah kunci khusus yang secara unik mengidentifikasi setiap catatan dalam sebuah tabel. Sangat penting dalam database relasional untuk memiliki pengidentifikasi unik di setiap baris tabel dan kunci utama adalah hal yang Anda perlukan untuk mengidentifikasi tuple secara unik dalam sebuah tabel. Sebuah tuple mewakili satu set atribut nilai dalam database relasional. Kunci utama dapat merujuk ke kolom atau kumpulan kolom dalam tabel basis data relasional yang digunakan untuk mengidentifikasi semua catatan dalam tabel secara implisit. Kunci utama harus unik untuk setiap catatan karena bertindak sebagai pengidentifikasi unik dan tidak boleh berisi nilai kosong. Setiap basis data harus memiliki satu dan hanya satu kunci utama.
Kunci asing merujuk ke bidang atau kumpulan bidang dalam catatan database yang secara unik mengidentifikasi bidang kunci dari catatan database lain di beberapa tabel lainnya. Secara sederhana, ini membuat tautan antara catatan dalam dua tabel berbeda dalam database. Itu bisa berupa kolom dalam tabel yang menunjuk ke kolom kunci primer yang berarti kunci asing yang didefinisikan dalam tabel mengacu pada kunci primer dari beberapa tabel lain. Referensi sangat penting dalam database relasional untuk membangun tautan antara catatan yang penting untuk menyortir database. Kunci asing memainkan peran penting dalam normalisasi basis data relasional terutama ketika tabel perlu mengakses tabel lain.
Kunci utama adalah kunci khusus dalam database relasional yang bertindak sebagai pengidentifikasi unik untuk setiap catatan yang berarti itu secara unik mengidentifikasi setiap baris / catatan dalam tabel dan nilainya harus unik untuk setiap baris tabel. Kunci asing, di sisi lain, adalah bidang dalam satu tabel yang menghubungkan dua tabel bersama. Ini mengacu pada kolom atau sekelompok kolom yang secara unik mengidentifikasi baris dari tabel lain atau tabel yang sama.
Kunci primer secara unik mengidentifikasi catatan dalam tabel database relasional, sedangkan kunci asing merujuk ke bidang dalam tabel yang merupakan kunci utama dari tabel lain. Kunci utama harus unik dan hanya satu kunci utama yang diizinkan dalam tabel yang harus ditentukan, sedangkan lebih dari satu kunci asing diizinkan dalam tabel.
Kunci utama adalah kombinasi dari batasan UNIQUE dan Not Null sehingga tidak ada nilai duplikat yang boleh ada di bidang kunci utama dalam tabel database relasional. Tidak ada dua baris yang diizinkan untuk membawa nilai duplikat untuk atribut kunci primer. Tidak seperti kunci primer, kunci asing dapat berisi nilai duplikat dan tabel dalam database relasional dapat berisi lebih dari kunci asing.
Salah satu perbedaan utama antara keduanya adalah bahwa tidak seperti kunci primer, kunci asing juga dapat berisi nilai NULL. Tabel dalam database relasional hanya dapat memiliki satu kunci utama yang tidak memungkinkan nilai NULL.
Batasan kunci primer dapat didefinisikan secara implisit pada tabel sementara dan variabel-variabelnya, sedangkan batasan kunci asing tidak dapat ditegakkan pada tabel temporer lokal atau global.
Nilai kunci utama tidak dapat dihapus dari tabel induk yang disebut sebagai kunci asing di tabel anak. Anda harus menghapus tabel anak terlebih dahulu sebelum menghapus tabel induk. Sebaliknya, nilai kunci asing dapat dihapus dari tabel anak bahkan jika nilai tersebut disebut kunci utama dari tabel induk.
Kunci memainkan peran penting dalam keberadaan skema database untuk membangun tautan antara tabel dan dalam tabel. Kunci membangun hubungan dan menegakkan berbagai jenis integritas, terutama tingkat meja dan integritas tingkat hubungan. Untuk satu, mereka memastikan tabel berisi catatan unik dan bidang yang Anda gunakan untuk membangun hubungan antara tabel harus berisi nilai yang cocok. Kunci primer dan kunci asing adalah dua jenis kunci yang paling penting dan umum digunakan dalam database relasional. Kunci utama adalah kunci khusus yang digunakan untuk secara unik mengidentifikasi catatan dalam tabel, sedangkan kunci asing digunakan untuk membangun hubungan antara dua tabel. Keduanya identik dalam struktur tetapi memainkan peran yang berbeda dalam skema basis data relasional.