- 4
- 0
- 约1.17万字
- 约 65页
- 2017-06-14 发布于北京
- 举报
数据库系统概念----SQL 4.2 完整性约束 完整性 数据的正确性和相容性 完整性检查 DBMS必须提供一种机制来检查数据库中的数据是否满足规定的条件,以保证数据库中数据是正确的,避免非法的不合语义的错误数据的输入和输出,即所谓的“垃圾进垃圾出”(Garbage In Garbage Out)所造成的无效操作和错误结果 完整性约束 完整性子系统 数据库的非法更新 数据本身是错误的 数据原来是正确的,操作或程序错误导致输入数据错误 由于系统故障,导致数据错误 事务的并发执行产生不正确结果 人为故意破坏 完整性子系统功能 监督事务执行,检查是否违反完整性规则 如有违反,采取相应措施(拒绝、报告、改正) 完整性控制 完整性规则 完整性规则集 由DBA或程序员事先提供的有关数据约束的一组规则 规则的构成 约束条件:要检查什么样的错误(性别为男女) 触发条件:什么时候使用规则进行检查(插入元组) ELSE子句:若检查出错误,该怎样进行处理(显示错误) 规则的分类 域完整性规则:属性取值范围 域联系规则:在一个或多个关系中,属性间的联系影响约束 关系完整性规则:更新操作对数据库中值的影响和限制 完整性控制 在属性值上的约束 非空约束:要求某属性取值不能为空值 SNAME CHAR(8) NOT NULL 基于属性的检查子句 CHECK(AGE15) 域约束子句 用CREATE DOMAIN定义域时,可以出现 CHECK CREATE DOMAIN AGE SMALLINT CHECK((VALUE = 15) AND VALUE = 25)) 完整性控制 主码约束 主码值不允许空,也不允许出现重复 意义:关系对应到现实世界中的实体集,元组对应到实体,实体是相互可区分的,通过主码来唯一标识,若主码为空,则出现不可标识的实体,这是不容许的 主码定义形式 主码子句:PRIMARY KEY(Sno) 主码短语:Sno CHAR(4) PRIMARY KEY 完整性控制 外码约束(参照完整性) 关系R中的一个属性组,它不是R的码,但它与另一个关系S的码相对应,则称这个属性组为R的外部码, 如 S关系中的Dno属性 如果关系R2的外部码Fk与关系R1的主码Pk相对应,则R2中的每一个元组的Fk值或者等于R1 中某个元组的Pk 值,或者为空值 意义:如果关系R2的某个元组t2参照了关系R1的某个元组t1,则t1必须存在 例如关系S在Dno上的取值有两种可能 空值,表示该学生尚未分到任何系中;若非空值,则必须是DEPT关系中某个元组的Dno值,表示该学生不可能分到一个不存在的系中 完整性控制 定义形式 在SC表中,定义 FOREIGN KEY (Sno) REFERENCES S(Sno) Sno在SC中是外码,在S中是主码,Sno在SC中取值或为空或为S中某个Sno值 作为主码的关系称为基本(参照)关系,作为外码的关系称为依赖关系 完整性控制 删除基本关系元组 RESTRICT方式 只有当依赖关系中没有一个外码值与要删除的基本关系的主码值相对应时,才可以删除该元组,否则系统拒绝此删除操作 CASCADE方式 将依赖关系中所有外码值与基本关系中要删除的主码值所对应的元组一起删除 SET NULL方式 删除基本关系中元组时,将依赖关系中与基本关系中被删主码值相对应的外码值置为空值 如FOREIGN KEY (Sno) REFERENCES S(Sno) [ON DELETE [CASCADE | SET NULL] ] 完整性控制 修改基本关系主码 RESTRICT方式 只有当依赖关系中没有一个外码值与要修改的基本关系的主码值相对应时,才可以修改该元组主码,否则系统拒绝此次修改 CASCADE方式 将依赖关系中所有与基本关系中要修改的主码值所对应的外码值一起修改为新值 SET NULL方式: 修改基本关系中元组主码时,将依赖关系中与基本关系中被修改主码值相对应的外码值置为空值 如FOREIGN KEY (Sno) REFERENCES S(Sno) [ON UPDATE [CASCADE | SET NULL] ] 完整性控制 全局约束 全局约束涉及多个属性间的或多个关系间的联系 CREATE TABLE SC (Sno CHAR(4), Cno CHAR(4), GRADE SMALLINT, PRIMARY KEY (Sno, Cno), CHECK(Sno IN (SELECT Sno FROM S)), CHECK(Cno IN (SELECT Cno FROM C))) 完整性控制 对约束的命名、撤消和添加 命名 CONSTRAINT 约束名 约束条件 示例
您可能关注的文档
最近下载
- (正式版)DB1501∕T 0038-2023 《红花生态种植技术规程》.pdf VIP
- 2025年广东中山中考语文试题及答案(word版) .pdf VIP
- 《中国文化概论》张岱年课后习题答案.pdf VIP
- 德阳市中考:2025年-2023年《化学》考试真题与参考答案.pdf
- 公路平面交叉设计细则.docx VIP
- 人教版二年级下册数学全册教学设计(配2026年春改版教材).docx
- 智慧树 知到 大学生爱国教育十讲 章节测试答案.docx VIP
- 2024年广东中山中考语文试题及答案.pdf VIP
- 医院药品采购管理制度细则.docx VIP
- 2《JavaScript初级》教学计划大纲.docx VIP
原创力文档

文档评论(0)