数据完整性对于一个数据库是很重要的。数据完整性是指数据的正确性和完备性,确保数据库中的数据质量。它主要包含以下几种:
一、实体完整性(entity integrity)
它规定表的每一行在数据库表中是唯一的实体。
二、域完整性(domain integrity)
它是指给定列的值的输入有次性,也就是说数据库中的列必须满足某种特定的数据类型约束和规则。
三、引用完整性(referention integrity)
它是保持两个表之间已定义的关系,确保两个关键字和外关键字的数据对应一致。
注意:1、当主表中没有关联的记录时,禁止将记录添加到列相关表中。
2、禁止更改主表中的值并导致相关表中的记录孤立。
3、当存在与主表中的记录A匹配的相关记录时记录A不能被删除。
四、用户定义完整性(user_defined integrity)
它是针对某个数据关系数据库的约束条件。
以下是数据完整性的具体实现方法:(主要以T—SQL为主)
一、CHECK约束:
CHECK约束允许单独一列使用,也可以应用在多列上,即表约束。
语法:1、对创建表时:
create table 表名
字段名....
............... CHECK (条件表达式)
2、对已有表时:
alter table 表名
add constraint 约束名(命名规则一般为约束类型+要约束的字段)
CHECK (字段+条件表达式)
删除:
alter table 表名
drop constraint 约束名
二、UNIQUE约束:
UNIQUE约束是为了保证在非主键中不输入重复值
UNIQUE与PRIMARY KEY的区别:
1、一个表可以定义多个UNIQUE约束,而PRIMARY KEY一个表只能定义一个。
2、UNIQUE在可在空值上定义,而PRIMARY KEY 不行。
语法:1、在新建表中时:
CREATE TABLE 表名
列名...........UNIQUE
2、 在已有表中时:
ALTER TABLE 表名
ADD CONSTRAINT 约束名
UNIQUE (字段)
删除同上
由于时间关系还有三个明天再写!文采不行,大家不要见笑!
数据完整性的分享