Verwenden Sie den BEFORE INSERT-Trigger für die Tabelle, um Nullwerte in MySQL-Feldern zu verhindern. Lass uns zuerst eine Tabelle erstellen -
mysql> create table DemoTable(Value int); Query OK, 0 rows affected (0.85 sec)
Lass uns einen Trigger erstellen, um zu verhindern, dass Nullwerte in einem MySQL-Feld erscheinen -
mysql> DELIMITER // mysql> create trigger preventing_to_insert_zero_value before insert on DemoTable for each row begin if(new.Value = 0) then SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'You can not provide 0 value'; END if; end // Query OK, 0 rows affected (0.34 sec) mysql> DELIMITER ;
Lass uns einen 0-Wert in die Tabelle einfügen und prüfen, ob der Wert eingefügt wird. Es wird nicht erlaubt -
mysql> insert into DemoTable values(0); ERROR 1644 (45000): You cannot provide 0 value
In der obigen Tabelle können also aufgrund von Triggern keine 0-Werte eingefügt werden. Sie können jedoch einige andere Werte einfügen.
Jetzt fügen wir einige Datensätze mit dem Einfügebefehl -
mysql> insert into DemoTable values(10); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(-1000); Query OK, 1 row affected (0.41 sec)
in die Tabelle ein. Verwenden Sie die SELECT-Anweisung, um alle Datensätze in der Tabelle anzuzeigen -
mysql> select *from DemoTable;
Dadurch wird die folgende Ausgabe erzeugt -
+-------+ | Value | +-------+ | 10 | | -1000 | +-------+ 2 rows in set (0.00 sec)
Das obige ist der detaillierte Inhalt vonNullwerte in MySQL-Feldern verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!