约束
数据库中的很多操作属于危险操作,如果一时大意的话就有可能犯下很严重的错误!!
无论是多么仔细,只要是人,那么你很认真的检查,也会有出错的时候
人是不靠谱的,所以我们把检查工作交给冷酷无情的机器来完成,让机器对我们写的代码来进行检查,避免人的危险操作
约束:对于数据库中的记录做出更详细的检查
约束类型
1)NOT NULL - 指示某列不能存储 NULL 值。
2)UNIQUE - 保证某列的每行必须有唯一的值。
3)DEFAULT - 规定没有给列赋值时的默认值。
4)PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。
5)FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。
6)CHECK - 保证列中的值符合指定的条件。对于MySQL数据库,对CHECK子句进行分析,但是忽略CHECK子句。
(1)not null ,如果在创建表的时候给变量加上not null 那么之后往表里输入值的时候,被设置成not null 的变量不能为空~
先创建一个不带not null 约束的表
当我们插入数据的时候,是可以给id设置为null的
接下来给id加上not null 约束
加上了not null 约束后,此时表结构中 NULL列的id行显示为不可为空~
当想给id置空,报错不可置为空~
(2)unique 唯一的,要求值在表中要唯一
每次插入或者修改数据,都会针对当前的数据在表里进行查找,看这个值能否被找到,如果能找到,就说明不是唯一的,插入或者修改就会失败~~~