Rumah >pangkalan data >tutorial mysql >Bolehkah Kekangan UNIK MySQL Mengendalikan Nilai Kosong dalam Lajur?
Kekangan Unik dengan Nilai Kosong dalam MySQL
Pertimbangkan senario di mana anda mempunyai medan menyimpan kod produk yang mestilah unik, tetapi produk tertentu kekurangan kod pembekal yang ditetapkan. Timbul persoalan, adakah mungkin untuk menentukan kekangan unik yang menampung senario ini dalam MySQL?
Jawapan:
Ya, adalah wajar untuk mencipta kekangan unik yang membenarkan nilai kosong dalam MySQL. Seperti yang dinyatakan dalam manual rujukan MySQL (versi 5.5):
"Indeks UNIK mencipta kekangan supaya semua nilai dalam indeks mesti berbeza. Ralat berlaku jika anda cuba menambah baris baharu dengan kunci nilai yang sepadan dengan baris sedia ada Untuk semua enjin, indeks UNIK membenarkan berbilang nilai NULL untuk lajur yang boleh mengandungi NULL."
Oleh itu, untuk lajur yang membenarkan nilai NULL, walaupun sifat NOT NULLnya, ia adalah sah dengan sempurna untuk mentakrifkan kekangan unik tanpa membawa kepada konflik. Ini membenarkan situasi di mana produk tertentu tidak mempunyai kod yang ditetapkan, membolehkannya dimasukkan ke dalam pangkalan data tanpa melanggar keperluan keunikan.
Atas ialah kandungan terperinci Bolehkah Kekangan UNIK MySQL Mengendalikan Nilai Kosong dalam Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!