日期:2014-05-16  浏览次数:20480 次

关系型数据库基础之:保证数据完整性

3、保证数据完整性:

 

       数据完整性概述:
       数据的完整性包含了数据的可靠性和数据的准确性。
       根据数据完整性实施方法,我们可以将其分为四类:实体完整性、域完整性、引用完整性及自定义完整性。
       实体完整性:保证一行数据是有效的;
       域完整性:保证一列的数据是有效的;
       引用完整性:保证引用的编号是有效的;
       用户自定义完整性:保证自定义规则。

 

       数据完整性的实现:
       非空约束not null;
       主键约束primary key是应用于表的列的一个约束。主键的列不能为空值,也不能重复。主键默认值为非空;
       主键约束被定义后,一个唯一索引自动被创建。主键约束包含了非空和唯一索引;
       唯一约束unique是指给定列的所有的值必须是唯一的。通常直接写在某个列的后面;
       指定默认值default;
       使用自动编号列,在语句中添加auto_incrernent,都是用在数字列上面,非数字列不能用,默认值从1开始,每次加1。
       使用foreing key约束连接的两个列必须是相同的或者至少是相似的数据类型。
       在My SQL中必须要给有外键约束的设置表的类型为InnoDB。
       不能删除一个被其他表引用的表。如果要删除首先必须去掉引用关系。
       实体完整性保证表中的每一行都是不同的实体。域完整性保证输入到每一列的数据的完整性和准确性,引用完整性保证表间关系的正确性和
完整性。