数据库——约束
约束:约束是作用于表中列上的规则,用于限制加入表中的数据;约束的存在保证了数据库中数据的正确性,有效性和完整性
tips:mysql不支持检查约束
create table emp(
id int primary key auto_increment,
ename varchar(50) not null unique,
joindate date not null,
salary double(7,2) not null,
bonus double(7,2) default 0
);
insert into emp(id,ename,joindate,salary,bonus) values(1,'张三','1999-11-11',8800,5000);
#演示主键约束:非空且唯一
insert into emp(id,ename,joindate,salary,bonus) values(null,'张三','1999-11-11',8800,5000);#查看主键约束是否必须非空
insert into emp(id,ename,joindate,salary,bonus) values(1,'张三','1999-11-11',8800,5000);#查看主键约束是否必须唯一
insert into emp(id,ename,joindate,salary,bonus) values(2,'李四','1999-11-11',8800,5000);#查看是否可以添加
#演示非空约束
insert into emp(id,ename,joindate,salary,bonus) values(3,null,'1999-11-11',8800,5000);#查看非空约束是否必须非空
#演示唯一约束
insert into emp(id,ename,joindate,salary,bonus) values(3,'李四','1999-11-11',8800,5000);#演示唯一约束是否必须唯一
#演示默认约束
insert into emp(id,ename,joindate,salary) values(3,'王五','1999-11-11',8800);#演示默认约束在无值情况下是否可以执行
insert into emp(id,ename,joindate,salary,bonus) values(4,'赵六','1999-11-11',8800,null