数据约束

来源:互联网 发布:linux 显卡性能测试 编辑:程序博客网 时间:2024/06/06 02:52

1.约束保证数据的完整性和一致性。

2.约束分为表级约束(2个或2个以上字段)[只能在列定义后声明]和列级约束(字段数目一个)[可在定义时声明,也可在列定义后声明]。

3.功能划分:not  null(非空约束)   primary key(主键约束)    unique key(唯一约束)

     default (默认约束)     foreign key(外键约束) 

4.外键约束:保持数据一致性,完整性,实现一对一或一对多关系。

  要求:(1)父表和子表必须使用相同的存储引擎,而且禁止使用临时表。

   (2)数据表的存储引擎只能为InnoDB。

   (3)外键列和参照列必须具有相似数据类型,其中数字长度或是否有符号位必须相同,而字符的长度则可不同。

  (4)创建索引,若外键列不存在索引的话,MySQL将自动创建

子表:具有外键的表 父表:字表参照表外键列:具有加过foreign的列。

5.外键约束的参照操作:(1)cascade:从父表删除或更新子表中匹配的行。

(2)set null:从父表删除或更新行,并设置子表的外键列为null,如果使用该选项,必须保证子表没有指定not  null。

(3)restrict:拒绝对父表的删除或更新操作。

(4)no  action:标准SQL的关键字,在MySQL中与restrict相同。


0 0
原创粉丝点击