Rumah >pangkalan data >tutorial mysql >Bagaimanakah MySQL Mengendalikan Kekangan Unik dan Nilai Null?
Kekangan Unik dan Nilai Null dalam MySQL
Dalam reka bentuk pangkalan data, kekangan unik digunakan untuk memastikan bahawa lajur atau set lajur tertentu dalam jadual mengandungi hanya nilai yang berbeza. Walau bagaimanapun, kadangkala wajar untuk membenarkan nilai nol dalam lajur yang mempunyai kekangan unik. Dalam MySQL, ini sememangnya mungkin.
MySQL membenarkan berbilang baris mempunyai nilai nol dalam lajur dengan kekangan unik. Ini bermakna nilai nol pendua mungkin dalam lajur tanpa melanggar kekangan.
Untuk menggambarkan tingkah laku ini, pertimbangkan contoh berikut:
CREATE TABLE table1 (x INT NULL UNIQUE); INSERT table1 VALUES (1); INSERT table1 VALUES (1); -- Duplicate entry '1' for key 'x' INSERT table1 VALUES (NULL); INSERT table1 VALUES (NULL); SELECT * FROM table1;
Apabila anda melaksanakan pernyataan di atas, MySQL memasukkan tiga baris ke dalam jadual. Pernyataan sisipan pertama berjaya kerana nilai 'x' adalah unik (1). Pernyataan sisipan kedua gagal kerana nilai 'x' (1) sudah wujud dan ia melanggar kekangan unik. Walau bagaimanapun, pernyataan sisipan ketiga dan keempat berjaya kerana nilai 'x' adalah batal, yang dibenarkan di bawah kekangan unik dalam MySQL.
Hasil kenyataan SELECT akan memaparkan baris berikut:
x NULL NULL 1
Adalah penting untuk ambil perhatian bahawa tingkah laku ini khusus untuk MySQL. Pangkalan data lain, seperti SQL Server 2005 atau lebih lama, tidak membenarkan berbilang nilai nol dalam lajur dengan kekangan unik. Mereka biasanya membenarkan hanya satu nilai nol dalam senario sedemikian.
Atas ialah kandungan terperinci Bagaimanakah MySQL Mengendalikan Kekangan Unik dan Nilai Null?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!