mysql建表约束(非空约束,默认约束)

坚强是说给别人听的谎言 提交于 2020-11-25 18:31:05

--非空约束

not null  修饰字段不能为空null

create table data1(
id  int,
sname varchar(20) not null

)

 //这样插入会报错,它会提示你sname字段不能为空

insert into data4(id) VALUES(1);
[SQL]insert into data4(id) VALUES(1);
[Err] 1364 - Field 'sname' doesn't have a default value

 //这样插入就不会报错 

insert into data4 values(1,'张三');

 

--默认约束

设置一个字段默认为一个值

create table data5(
id int,
sname varchar(20),
sage int default 10

)

  当插入id和sname字段的时候,不插入sage字段,sage字段就会使用设置的默认值

insert into data5(id,sname) values(1,'张三');

 

 

插入sage的值是也可以自己设置

insert into data5  values(2,'张三‘,19);

  

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!