、数据完整性的类型 1、实体完整性( Entity Integrity) 考虑向表中输入哪些值。要求每个实体都必 须拥有一个主键或其他的唯一标识列 2、参照(引用)完整性( Referential1 Integrity) 考虑表间的数据在插入和删除时,数据的 致性。要求建立在主键和外键基础上。 3、用户定义的完整性(User- defined Integrity)。 考虑限制向表中输入的值的范围 2021/2/20 Information College. ChangJun 6
6 2021/2/20 Information College · ChangJun 3、用户定义的完整性(User-defined Integrity)。 考虑限制向表中输入的值的范围。 二、数据完整性的类型 1、实体完整性(Entity Integrity) 考虑向表中输入哪些值。要求每个实体都必 须拥有一个主键或其他的唯一标识列。 2、参照(引用)完整性(Referential Integrity) 考虑表间的数据在插入和删除时,数据的一 致性。要求建立在主键和外键基础上
三、完整性的作用对象 完整性的作用对象可以是:列、元组和表 1.列级约束 对数据类型的约束:包括数据类型、长度、 精度等。 对数据格式的约束:如规定学号的前两位表 示学生的入学年份,第三位表示系的编号,第四 位表示专业编号,第五位代表班的编号等等 对取值范围或取值集合的约束:如学生的成 绩取值范围为0~100 对空值的约束:列是否允许为空。 2021/2/20 Information College. ChangJun
7 2021/2/20 Information College · ChangJun 三、完整性的作用对象 1.列级约束 对数据类型的约束:包括数据类型、长度、 精度等。 对数据格式的约束:如规定学号的前两位表 示学生的入学年份,第三位表示系的编号,第四 位表示专业编号,第五位代表班的编号等等。 对取值范围或取值集合的约束:如学生的成 绩取值范围为0~100。 对空值的约束:列是否允许为空。 完整性的作用对象可以是: 列、元组和表
三、完整性的作用对象 2.元组约束 元组的约束是元组中各个字段之间的联系 的约束,如:开始日期小于结束日期,职工的 最低工资不能低于规定的最低保障金等。 3.关系约束 关系约束是指若干元组之间、关系之间的 联系的约束。比如学号的取值不能重复也不能 取空值,学生选课表中的学号的取值受学生表 中的学号取值的约束等。 2021/2/20 Information College. ChangJun 8
8 2021/2/20 Information College · ChangJun 三、完整性的作用对象 3.关系约束 关系约束是指若干元组之间、关系之间的 联系的约束。比如学号的取值不能重复也不能 取空值,学生选课表中的学号的取值受学生表 中的学号取值的约束等 。 2.元组约束 元组的约束是元组中各个字段之间的联系 的约束,如:开始日期小于结束日期,职工的 最低工资不能低于规定的最低保障金等
四、实现完整性的措施 SQL Server提供了一些措施(方法、途 径)来帮助用户维护数据完整性,其中最主要 的是: 1、约束 2、规则 3、默认值 4、触发器 2021/2/20 Information College. ChangJun
9 2021/2/20 Information College · ChangJun 四、实现完整性的措施 SQL Server 提供了一些措施(方法、途 径)来帮助用户维护数据完整性,其中最主要 的是: 1、约束 2、规则 3、默认值 4、触发器
62使用约束措施 约束定义关于列中允许值的规则,是强制完 整性的标准机制。使用约束优先于使用触发器、 规则和默认值。 SQL Server2000支持五类约束: PRIMARY KEY(主键)约束 FOREIGN KEY(外键)约束 UNIQUE(惟一)约束 CHECK(核查)约束 NULLable约束 2021/2/20 Information College. ChangJun
10 2021/2/20 Information College · ChangJun 6.2 使用约束措施 ➢ PRIMARY KEY(主键)约束 ➢ FOREIGN KEY (外键)约束 ➢ UNIQUE(惟一)约束 ➢ CHECK(核查)约束 ➢ NULLable 约束 约束定义关于列中允许值的规则,是强制完 整性的标准机制。使用约束优先于使用触发器、 规则和默认值。 SQL Server 2000 支持五类约束: