一.主键约束
在表中定义一个主键来唯一确定表中每一行数据的标识符。
主键列的数据类型不限,但此列必须是唯一并且非空。
1.设置一个字段为主键
- id int primary key;
2.插入主键相同的数据
- insert into class values(‘1’,‘王五’);
插入失败!
3.插入主键为空的数据
- inset into class values(NULL,‘赵六’);
插入失败,因为主键不能为空值。
二.联合主键
1.创建一个新表,同时设置两个字段为主键。
2.插入数据
联合主键中任何一个主键都不可以为空,并且联合的主键值加起来不重复就可
三.自增约束
1.创建新表
2.插入数据并查看
不能一次性插入两行数据,一次只能插一行。id不用管.
自动生成了id
四.创建表后,忘记添加主键约束,事后如何添加或者删除?
事后在id处添加
查看表结构
事后删除
使用modify修改字段,添加约束
五.唯一约束
1.建表
2.添加唯一约束
3.插入数据测试
4.添加唯一约束的几种不同方式
1.这种方式可以同时设置多个字段为约束。
2.
3.事后补的方式
六.非空约束
1.建表添加非空约束
NO表示name属性不允许为空。
2.传值
没有传name的值,报错。
正确传值
只传name,不传id,也是可以的。
七.默认约束
1.作用
当我们插入字段值的时候,如果没有传值,就会使用默认值。
2.建表
设置age字段默认约束,默认值是10
3.查表
4.传值
八.外键约束
1.含义
涉及两个表:父表,子表。或者说是 主表,副表。
2.创建班级表
3.创建学生表
.主表classes中没有的数据值,在副表中是不能使用的。
4.查看两个表的结构
5.传值
像主表中传值,主表中id值有1、2、3、4.
像副表中传值
像副表中错误传值
6.删除
主表中的记录若被副表引用过,那么主表中该值不可以删除