一. DEFAULE
-
默认约束
-
当插入记录时,如果没有明确为字段赋值,则自动赋予默认值
二. DEFAULE举例
我们创建一个数据表:
mysql> CREATE TABLE tb61( -> id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY, -> username VARCHAR(20) NOT NULL UNIQUE KEY, -> sex ENUM('1','2','3') DEFAULT '3' -> );
查看一下数据表结构:
mysql> SHOW COLUMNS FROM tb61; +----------+----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+----------------------+------+-----+---------+----------------+ | id | smallint(5) unsigned | NO | PRI | NULL | auto_increment | | username | varchar(20) | NO | UNI | NULL | | | sex | enum('1','2','3') | YES | | 3 | | +----------+----------------------+------+-----+---------+----------------+ 3 rows in set (0.01 sec)
可以看到sex字段的默认值为3
我们插入一条记录,仅设置username,不设置sex
mysql> INSERT tb61(username) VALUES('Tom');
然后查看一下记录:
mysql> SELECT * FROM tb61; +----+----------+------+ | id | username | sex | +----+----------+------+ | 1 | Tom | 3 | +----+----------+------+ 1 row in set (0.00 sec)
发现即使我们没有设置Tom的性别,但是sex默认被赋值成了3
请登录之后再进行评论