【软考】关系数据库完整性约束

1. 说明
  • 1.完整性规则提供了一种手段来保证当授权用户对数据库做修改时不会破坏数据的一致性。
  • 2.完整性规则防止的是对数据的意外破坏。
  • 3.关系模型的完整性规则是对关系的某种约束条件。
  • 4.关系的完整性共分为三类:实体完整性、参照完整性(引用完整性)和用户定义完整性。
2. 实体完整性
  • 1.Entity Integrity。
  • 2.规定基本关系R的主属性A不能取空值。
3. 参照完整性
  • 1.Referential Integrity。
  • 2.现实世界中的实体之间往往存在某种联系,在关系模型中实体及实体间的联系是用关系来描述的,这样自然就存在着关系与关系间的引用。
  • 3.员工和部门关系模式如:员工(员工号,姓名,部门号),部门(部门号,名称,电话);这两个关系存在着属性的引用。员工关系中的“部门号”属性取值要参照部门关系的“部门号”属性取值。
4. 用户定义完整性
  • 1.User Defined Integrity。
  • 2.用户定义完整性是针对某一具体的关系数据库的约束条件,反应某一具体应用所涉及的数据必须满足的语义要求,由应用的环境决定。
  • 3.如银行的账户规定必须大于等与100000、小于999999。
5. 例题
5.1 例题1
  • 1.题目
1.某数据库中有员工关系E、产品关系P、仓库关系W和库存关系!,其中:
员工关系E(employeelD,name,department)中的属性为:
员工编号,姓名,部门;
产品关系P(productlD,name,model,size,color)中的属性为:
产品编号,产品名称,型号,尺寸,颜色;
仓库关系W(warehouselD,name,address,employeelD)中的属性为:
仓库编号,仓库名称,地址,负责人编号;
库存关系I(warehouselD,productlD,quantity)中的属性为仓库编号,产品编号和产品数量。
若要求仓库关系的负责人引用员工关系的员工编号,
员工关系E的员工编号、仓库关系W的仓库编号和产品关系P的产品编号不能为空且惟一标识一个记录,
并且仓库的地址不能为空,则依次要满足的完整性约束是()。

A.实体完整性、参照完整性、用户定义完整性
B.参照完整性、实体完整性、用户定义完整性
C.用户定义完整性、实体完整性、参照完整性
D.实体完整性、用户定义完整性、参照完整性
  • 2.解析
1.仓库关系的负责人引用员工关系的员工编号,是实体与实体之间的联系,因此是参照完整性。
2.员工关系E的员工编号、仓库关系W的仓库编号和产品关系P的产品编号不能为空且惟一标识一个记录,
是主属性不能取空值,因此是实体完整性。
3.仓库的地址不能为空,是应用所涉及的数据必须满足的语义要求,因此是用户定义完整性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王佑辉

老板,赏点吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值