Rumah > Artikel > pangkalan data > Analisis tentang perbezaan antara kunci super, kunci utama dan kunci calon dalam MySQL
Artikel ini membawakan anda pengetahuan yang berkaitan tentang mysql terutamanya memperkenalkan perbezaan antara kunci super, kunci utama dan kunci calon dalam MySQL. Saya harap ia akan membantu semua orang .
Pembelajaran yang disyorkan: tutorial video mysql
Baru-baru ini saya menemui soalan semasa saya membaca buku MySQL:
Memandangkan kita sudah mempunyai konsep kunci utama, dan kunci utama sudah boleh memenuhi keperluan, mengapa kita masih memerlukan perkara sedemikian sebagai kunci calon? Apakah peranan kunci calon? Ia diberikan takrifan utama calon tetapi ia tidak benar-benar kacau dengan apa-apa.
Dengan mentaliti meminta maklumat lanjut, saya mencari dalam talian dan melihat penjelasan pakar saya masih berasa sedikit keliru, jadi saya ingin menyelesaikannya di sini untuk membantu diri saya memahami dengan lebih jelas. Saya juga berharap seseorang boleh memberi saya beberapa petunjuk jika saya mempunyai salah faham Berikut adalah beberapa pemahaman saya:
Malah, kunci utama dan kunci super adalah lebih baik ialah jadual seperti ini:
Tulisannya agak kasar, jadi saya akan lihat sahaja.
Set atribut yang boleh mengenal pasti tuple secara unik dalam perhubungan dipanggil kunci super skema perhubungan. Perhatikan "set atribut" dalam definisi Kekunci super boleh menjadi set yang besar, asalkan ia boleh menentukan baris mana itu, jadi 'id', 'user', 'pwd', 'section', 'name'. semua OK ialah set kekunci super.
Kunci super yang tidak mengandungi atribut berlebihan Contohnya, dalam kunci super di atas, 'id' boleh menentukan baris mana ia dengan sendirinya, jadi ia boleh menjadi kunci calon. dengan sendirinya, empat yang lain selain ia juga boleh menjadi kunci calon, tetapi lima ini disatukan kerana terdapat lajur berlebihan, ia bukan kunci calon. (Empat yang lain boleh menjadi kunci calon kerana setiap lajur mungkin mempunyai kandungan pendua)
Cari satu daripada semua kunci calon untuk digunakan sebagai kunci utama, iaitu Ia boleh menjadi ID , ia boleh menjadi gabungan empat yang lain, atau ia boleh menjadi pilihan lain, asalkan ia boleh memastikan set yang dipilih boleh ditentukan secara unik.
Ringkasnya, kunci calon ialah subset kunci super dan kunci primer ialah subset kunci calon.
Sebenarnya, setelah selesai banyak-banyak, saya masih tidak faham apa fungsi kunci calon sebenarnya, ia mungkin seperti ruang menunggu sahaja , dan terdapat beberapa kunci utama di ruang menunggu Duduk dan beritahu anda: "Kami semua telah membeli tiket dan layak untuk menaiki bas. Sesiapa yang anda pilih untuk menaiki bas akan menaiki bas bersama anda." Itu sepatutnya.
Kunci calon ialah subset kunci super, dan kunci utama ialah salah satu kunci calon.
Pertimbangkan set atribut (nombor ID, nama, jantina, umur), dengan andaian tiada nama pendua
a ialah:
b Kunci calon dalam kunci super
c kunci utama
Contoh:
Dalam pangkalan data SQL Server, terdapat jadual maklumat pelajar seperti yang ditunjukkan di bawah Set atribut yang tidak boleh digunakan sebagai kunci calon dalam jadual ini ialah ( ) ( Pilih satu)
b) {nombor pelajar, nama}ID Pelajar, Nama, Jantina, Umur, Jabatan, Major
20020612 Li Huinan 20 Pembangunan Perisian Komputer
20060613 Zhang Mingnan 18 Pembangunan Perisian Komputer
20060614 Wang Xiaoyunu 19 Fizik dan Mekanik
20060615 Li Shuhua Perempuan 17 Zoologi Biologi
20060616 Zhao Jingnan 21 Kimia Kimia Makanan
20060612 20060612 Zhao a ) {nombor pelajar}
c) {umur, jabatan}d) {nama, jantina}
tutorial video mysql
e) {nama, jurusan}
Pembelajaran yang disyorkan:
Atas ialah kandungan terperinci Analisis tentang perbezaan antara kunci super, kunci utama dan kunci calon dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!