- 首先我们重新创建一个表,新增年龄列
create table family (id bigint,name varchar(20) NOT NULL, age int);
- 插入一条数据,没有设置默认约束时,不指定年龄的值时列为NULL
- 我们希望插入进来的数据,没有给定年龄时,会默认有年龄,那么我们重构家庭表,为年龄加入默认约束
在要加约束的列名后直接加default 默认值即可
create table family (id bigint,name varchar(20) NOT NULL, age int default 18);
- 我们发现在插入一条记录时,不指定年龄的值时列使用了默认值18 并且表结构中age 列的default列默认为18
- 那么我们如果插入年龄列为NULL 值时,是否还会使用默认值18 呢? 我们来一探究竟 我们发现当我们明确指定插入记录为NULL时,不会使用默认值