目录
所谓完整性是指数据的准确性和一致性,而完整性检查就是指检查数据的准确性和一致性。Mysql数据库管理系统提供了一致机制来检查数据库表中的数据是否满足规定的条件,以保证数据库表中数据的准确性和一致性,这种机制就是约束。
1.主键
当某一列添加了主键约束后,那么这一列的数据就不能重复出现。这样每行记录中其主键列的值就是这一行的唯一标识。例如学生的学号可以用来做唯一标识,而学生的姓名是不能做唯一标识的,因为学生有可能同名。
- 主键列的值不能为NULL,也不能重复!
- 指定主键约束使用PRIMARY KEY关键字!
1.1 创建表:定义列时指定主键:
1.2 创建表:定义列之后独立指定主键:
1.3 修改表时指定主键:
1.4 删除主键(只是删除主键约束,而不会删除主键列):
2.主键自增长
MySQL提供了主键自动增长的功能!这样用户就不用再为主键是否重复而烦恼了。当主键设置为自动增长后,在没有给出主键值时,主键的值会自动生成,而且是最大主键值+1,也就不会出现主键重复的问题了。
2.1 创建表时设置主键自增长(主键必须是整型才可以自增长):
2.2 修改表时设置主键自增长:
第二种方式:alter table tb_stu modify sid int auto_increment;
2.3 修改表时删除主键自增长:
第二种方式:alter table tb_stu modify sid int;
3.非空约束
指定非空约束的列不能没有值,也就是说在插入记录时,对添加了非空约束的列一定要给值;在修改记录时,不能把非空列的值设置为NULL。
指定非空约束:
当为sname字段指定为非空后,在向tb_stu表中插入记录时,必须给sname字段指定值,否则会报错: