一. 空值与非空
-
NULL,字段值可以为空
-
NOT NULL,字段值禁止为空
我们首先创建一个字段:
mysql> CREATE TABLE tb2( -> username VARCHAR(20) NOT NULL, -> age TINYINT UNSIGNED NULL -> );
然后查看这个字段的结构:
mysql> SHOW COLUMNS FROM tb2; +----------+---------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+---------------------+------+-----+---------+-------+ | username | varchar(20) | NO | | NULL | | | age | tinyint(3) unsigned | YES | | NULL | | +----------+---------------------+------+-----+---------+-------+
可以看到username的NULL是NO,是不为空的,加入我们设置username为NULL:
mysql> INSERT tb2 VALUES(NULL,26); ERROR 1048 (23000): Column 'username' cannot be null
可以看到报错提示不允许username为NULL
请登录之后再进行评论