欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL数据库中的五大约束

程序员文章站 2022-05-31 23:37:54
...


数据库中的五大约束包括:

1.主键约束(Primay Key Coustraint) 唯一性,非空性;

2.唯一约束 (Unique Counstraint)唯一性,可以空,但只能有一个;

3.默认约束 (Default Counstraint) 该数据的默认值;

4.外键约束 (Foreign Key Counstraint) 需要建立两表间的关系;

5.非空约束(Not Null Counstraint):设置非空约束,该字段不能为空。

详细介绍:

外键约束 (Foreign Key Counstraint)

1、设置外键的注意事项:

> 只有INNODB的数据库引擎支持外键,修改my.ini文件设置default-storage-engine=INNODB;
> 外键与参照列的数据类型必须相同。(数值型要求长度和无符号都相同,字符串要求类型相同,长度可以不同);
> 设置外键的字段必须要有索引,如果没有索引,设置外键时会自动生成一个索引;

2、设置外键的语法:

CONSTRAINT 外键名 FOREIGN KEY(外键字段) REFERENCES 参照表(参照字段);
ON DELETE SET NULL ON UPDATE CASCADE -- 设置操作完整。

3、外键约束的参照操作:

当对参照表的参照字段进行删除或更新时,外键表中的外键如何应对。
参照操作可选值:

  RESTRICT: 拒绝对参照字段的删除或修改(默认);
  NO ACTION:与RESTRICT相同,但这个指令只在MySql生效;
  CASCADE:  删除或更新参照表的参照字段时,外键表的记录同步删除或更新;
  SET NULL: 删除删除或更新参照表的参照字段时,外键表的外键设为NULL (此时外键不能设置为NOT NULL)

二、主键约束(Primay Key Coustraint

1、主键的注意事项:主键默认非空,默认唯一性约束,只有主键可以设置自动增长(主键不一定自增,自增一定是主键)。

2、设置主键的方式:

> 在定义列时设置:id     INT UNSIGNED PRIMARY KEY。
> 在列定义完成后设置:PRIMARY KEY(id)

其他约束没有特殊要求因此不做解释。

相关标签: 数据库 MySQL