数据库原理理论教学SQLServer数据完整性_数据库原理sqlserver
数据库原理理论教学SQLServer数据完整性由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数据库原理sqlserver”。
SQL Server数据完整性
一、完整性的概念
之所以要引入数据完整性是为了在数据的添加、删除、修改等操作中不出现数据的破坏或多个表数据不一致
数据完整性是指存储在数据库中的数据正确无误并且相关数据具有一致性
二、完整性的类型 1)实体完整性
实体:表中的记录,一个实体就是指表中的一条记录。实体完整性:在表中不能存在完全相同的记录,且每条记录都要具有一个非空且不重复的主键值。
实现实体完整性的方法:设置主键、惟一索引、惟一约束 2)域完整性
域完整性:向表中添加的数据必须与数据类型、格式及有效的数据长度相匹配。
实现域完整性的方法:CHECK约束、外键约束、默认约束、非空定义、规则以及在建表时设置的数据类型
3)参照完整性 参照完整性:又称为引用完整性。是指通过主键与外键相联系的两个表或两个以上的表,相关字段的值要保持一致。
实现实体完整性的方法:外键约束 4)用户定义的完整性 用户定义的完整性:是根据具体的应用领域所要遵循的约束条件由用户自己定义的特定的规则。
三、约束的类型
约束:SQL Server提供的自动强制数据完整性的一种方法。它通过定义列的取值规则来维护数据的完整性。
常用约束:NOT NULL,CHECK、UNIQUE、PRIMARY KEY、FOREIGN KEY、DEFAULT 1)主键约束:在表中定义一个主键来惟一标识表中的每行记录
特点:每个表中只能有一个主键,主键可是一列,也可是多列;主键不能为空;主键值不能重复
2)UNIQUE约束:它主要用来限制表的非主键列中的值不能重复。特点:一个表中可以定义多个惟一约束
3)NOT NULL约束:它用来设定某列值不能为空。
特点:如果设定某列为NOT NULL,则在添加记录时,则此列必须插入数据。4)CHECK约束:它使用逻辑表达式来限制表中的列可以接受哪些数据值。
例如:成绩值应该在0-100之间,则可以为成绩字段创建CHECK约束,使取值在正常范围内。
5)DEFAULT约束:它为表中某列建立一个默认值,当为表中添加记录时,如果没有提供输入值,则自动以默认值赋给该列。
特点:默认值可以为常量、函数或表达式。使用默认值可以提高数据输入的速度。6)FOREIGN KEY约束
外键:是指一个表中的一列或列组合,它虽不是该表的主键,但是另一个表的主键。特点:实现两表之间相关数据的一致性。