Anda memasukkan string kosong, dan string kosong bukan NULL
, untuk memeriksa NULL
kesalahan lakukan:
INSERT INTO `addresses` (`street`, `city`, `state`, `zip`) VALUES (NULL, NULL, NULL, NULL);
dan Anda akan melihat kesalahan. NOT NULL
hanya memeriksa nilai yang bukan NULL
.
Untuk mencegah string kosong, Anda harus menggunakan pemicu
, atau lakukan pemeriksaan pada bahasa pemrograman sisi server untuk mengubah string kosong menjadi NULL
sebelum melakukan INSERT
query.Contoh pemicu untuk INSERT
mungkin seperti:(ini hanya contoh)
CREATE TRIGGER avoid_empty
BEFORE INSERT ON addresses
FOR EACH ROW
BEGIN
IF street = '' THEN SET street = NULL END IF;
END;