MySql 的约束
1、非空约束
2、唯一约束
补充:查看唯一约束:show keys from 表名;(后面加\g变为使用列的方式)
3、主键约束 (not null + unique)
(1)单字段主键:primary key
(2)联合主键或单个主键:primary key(字段1,字段2) 多个字段不重复,就可以插入成功
注意: 主键不能插入 null 和’ ‘,而非空约束可以插入 null;
创建表:
插入数据:
查询表:
正确插入:
联合主键中里面的字段两个都与前面的数据完全相同时添加不会成功,有以下几种情况所示:
主键不能插入 null 和’ ':
非空约束可以插入 null:
4、外键约束 (关联(reference)其他表的主键或者唯一键)
(1)主表(主键)和次表(外键,关联到主表的主键上)
(2)外键放在最后面语法为 字段名,foreign key (主表中要关联的字段) references 次表名(要关联的次表的字段名)
5、check约束
6、auto_increment 自增约束(一个表中只有一个,且该字段必须有唯一索引)
必须配合key使用(主键、外键、唯一约束),配合整数类型使用
插入null时会自动生成一个序号;
手动修改自增值;
注意: delete删除一个数据后,表的自增约束不会变小;而truncate删除数据时会重置自增约束。
(1)delete删除
(2)truncate 删除