实际上,MySQL NOT NULL约束限制了表的某一列具有NULL值。一旦将NOT NULL约束应用于列,便无法将null值传递给该列。它不能在整个表上声明,也就是说,我们可以说NOT NULL是列级约束。
为了声明字段NOT NULL,我们必须在CREATE TABLE语句中定义列时使用NOT NULL关键字。
mysql> Create table Employee(ID Int NOT NULL, First_Name Varchar(20), Last_name Varchar(20), Designation Varchar(15));
在上面的查询中,我们对“雇员”表的字段“ ID”应用了NOT NULL约束。现在,“ ID”列不能采用NULL值。也可以从DESCRIBE语句检查ID字段不能接受NULL值。
mysql> DESCRIBE Employee123\G *************************** 1. row *************************** Field: ID Type: int(11) Null: NO Key: Default: NULL Extra: *************************** 2. row *************************** Field: First_Name Type: varchar(20) Null: YES Key: Default: NULL Extra: *************************** 3. row *************************** Field: Last_name Type: varchar(20) Null: YES Key: Default: NULL Extra: *************************** 4. row *************************** Field: Designation Type: varchar(15) Null: YES Key: Default: NULL Extra: 4 rows in set (0.03 sec)