导航

SQL的约束

Posted on 2022-05-12 19:26  wuqiu  阅读(67)  评论(0编辑  收藏  举报

约束的定义:约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。

 

主键(PRIMARY KEY)作为数据表中一行数据的唯一标识符,在一张表中通过主键就能准确定位到某一行数据,因此主键十分重要,它不能有重复记录且不能为空。

 

默认值约束 (DEFAULT)  当有 DEFAULT 约束的列,插入数据为空时,将使用默认值。

 

唯一约束 (UNIQUE)    规定一张表中指定的一列的值必须不能有重复值,即这一列每个值都是唯一的。

 

外键 (FOREIGN KEY)  既能确保数据完整性,也能表现表之间的关系。

比如,现在有用户表和文章表,给文章表中添加一个指向用户 id 的外键,表示这篇文章所属的用户 id,外键将确保这个外键指向的记录是存在的,

如果你尝试删除一个用户,而这个用户还有文章存在于数据库中,那么操作将无法完成并报错。因为你删除了该用户过后,他发布的文章都没有所属用户了,而这样的情况是不被允许的。

同理,你在创建一篇文章的时候也不能为它指定一个不存在的用户 id。一个表可以有多个外键,每个外键必须 REFERENCES (参考) 另一个表的主键,被外键约束的列,取值必须在它参考的列中有对应值  

 

非空约束 (NOT NULL),听名字就能理解,被非空约束的列,在插入值时必须非空。