Perbezaan Antara kekunci utama dan kunci Unik

Anonim

Kekunci utama vs kekunci unik

Lajur atau satu set lajur, yang boleh digunakan untuk mengenal pasti atau mengakses baris atau satu set baris dalam pangkalan data dipanggil kunci. Kunci yang unik adalah kunci yang secara unik dapat mengenal pasti baris dalam jadual dalam konteks pangkalan data hubungan. Kekunci unik terdiri daripada lajur tunggal atau satu set lajur. Kunci utama juga merupakan gabungan lajur dalam jadual yang secara unik mengenal pasti baris. Tetapi ia dianggap sebagai kes khas kekunci unik.

Apakah Kunci Unik?

Seperti disebutkan sebelumnya, kekunci unik adalah lajur tunggal atau set lajur yang secara unik dapat mengenal pasti baris dalam jadual. Oleh itu, kekunci yang unik dikekang supaya tidak ada dua nilai yang sama. Satu perkara penting ialah kekunci unik tidak menguatkuasakan kekangan TIDAK NULL. Oleh kerana NULL mewakili kekurangan nilai, jika dua baris mempunyai NULL dalam lajur maka itu tidak bermakna nilai-nilai adalah sama. Lajur yang ditakrifkan sebagai kunci unik hanya membenarkan nilai NULL tunggal dalam lajur tersebut. Kemudian itu boleh digunakan untuk mengenal pasti baris tertentu secara unik. Sebagai contoh, dalam jadual yang mengandungi maklumat pelajar, ID pelajar boleh ditakrifkan sebagai kunci yang unik. Oleh kerana tidak ada dua pelajar yang boleh mempunyai ID yang sama ia unik mengenal pasti seorang pelajar tunggal. Jadi ruang ID pelajar memenuhi semua sifat kunci yang unik. Bergantung pada reka bentuk pangkalan data, jadual mungkin mempunyai lebih daripada satu kunci unik.

Apakah Kunci Utama?

Kekunci utama juga merupakan lajur atau kombinasi lajur yang secara unik mentakrifkan satu baris dalam jadual pangkalan data hubungan. Jadual boleh mempunyai paling satu kunci utama. Kekunci utama menguatkuasakan kekangan TIDAK NULL yang tersirat. Jadi, lajur yang ditakrif sebagai kunci utama tidak boleh mempunyai nilai NULL di dalamnya. Kunci utama boleh menjadi atribut normal dalam jadual yang dijamin unik seperti nombor keselamatan sosial atau ia boleh menjadi nilai unik yang dijana oleh sistem pengurusan pangkalan data seperti Pengenal Nyata Secara Seluruh Dunia (GUID) dalam Microsoft SQL Server. Kunci utama ditakrifkan melalui kekangan PRIMARI KEY dalam Standard ANSI SQL. Kekunci utama juga boleh ditakrifkan semasa membuat jadual. SQL membolehkan kunci utama terdiri daripada satu atau lebih tiang dan setiap lajur yang dimasukkan ke dalam kunci utama secara tersirat ditakrifkan sebagai TIDAK NULL. Tetapi beberapa sistem pengurusan pangkalan data memerlukan membuat lajur utama utama dengan jelas TIDAK NULL.

Perbezaan antara kekunci utama dan kekunci Unik

Walaupun kedua-dua kekunci utama dan kekunci unik adalah satu atau lebih lajur yang secara unik dapat mengenal pasti baris di dalam jadual, mereka mempunyai beberapa perbezaan penting. Paling penting, jadual hanya mempunyai satu kunci utama sementara ia boleh mempunyai lebih daripada satu kunci unik.Kunci utama boleh dianggap sebagai kes khas kekunci unik. Perbezaan lain ialah kunci utama mempunyai kekangan TIDAK NULL yang tersirat manakala kekunci unik tidak mempunyai kekangan itu. Oleh itu, lajur kunci unik mungkin atau mungkin tidak mengandungi nilai NULL tetapi lajur utama utama tidak boleh mengandungi nilai NULL.