- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机]第8 章 完整性
下载
第8章 完 整 性
8.1 引言
数据库中完整性( i n t e g r i t y )一词指数据的正确性和相容性 。正像第3章所说的,一个给
定的数据库可能受到多个完整性约束的限制 ,可能是简单的也可能是复杂的。比如,在供
应商-零件例子中,供应商号码可能是 Sn n n n ( n n n n 为1到4位整数 ) ,并且这一编号是唯一
的;状态值可能在 1~1 0 0的范围内;伦敦的供应商状态值必须是 2 0 ;发货量必须是 5 0 的倍
数;颜色为“红”的零件必须被存放在伦敦;等等。通常, D B M S 都被告知存在这样的约
束,当然,也能在一定程度上实现这样的约束(一般是通过拒绝违反这些约束的更新请
求来实现)。例如(再次引用 Tutorial D ):
(状态值必须在1 ~ 1 0 0范围内)。这个约束被命名为 S C 3 (供应商约束3 ,suppliers constraint
3 );这个约束将以此名在系统目录( system catalog )中注册,当系统对企图违反这个约
束的操作作出响应时,这个名字将在诊断提示信息中出现。此约束本身被指定为一个布
尔表达式,并且,其值不可为假。
注意:为明确起见,我们采用 Tutorial D 的代数形式;所以,这个布尔表达式常常采
取(虽然并非一成不变)如下的形式: I S _ E M P T Y ( . . . ) ,意思是数据库中没有违反这个约
束的元组(参见第 6章,6 . 9节)。这个例子的演算描述为 :
( SX 是定义在供应商上的一个范围变量 ) 。
另外我们注意到以演算约束形式存在的布尔表达式必须是一个封闭的合式公式 (参见
第7 章,7 . 2节) ,并且常(但并非一成不变)采用 FORALL x ( . . . ) 的形式。这样,这个例子
约束所有的供应商状态值必须在指定的范围内。实际上,对于一个数据库系统,只要检
查新插入或更新的“供应商”记录就可以了,而不用检查所有的供应商记录。
当声明一个新的约束时,系统首先要确保当前系统满足这个约束。如果当前系统不满
足这个约束,这个新约束就被拒绝;反之,则被接受(也就是被存储在目录中),从此新
的约束开始生效。此后, D B M S就要监视每一个插入的“供应商”记录和会引起已存在供
应商记录状态值变动的操作。
当然,我们也要有能够解除已存在约束的方法。
例如:
实际上,用演算而不用代数形式的公式表示约束看起来要简单一些(特别是复杂的约束)。为了与本
书其他章节一致,这里只讨论代数形式,读者可以试着将下面的代数形式转化为演算形式。
180使用第二部分 关系数据模型
下载
注意:正像下面的讨论所指出的,我们将尤其关注声明完整性支持。遗憾的是,即使
现在,也几乎没有什么产品能在这方面做得很好。但在这一点上是不断进步的,虽然目
前一些数据库产品(尤其是非关系数据库)还特别强调一种与此相反的方法 —也就是
对约束的“过程支持” (procedural support ),通过存储过程和触发过程来实现 。但是,
建议一个 D B M S提供对约束的声明支持( declarative support ),因为多达百分之九十的数据
库定义中包含约束。一个提供对约束的声明支持的数据库将在相当程度上减轻程序员的
负担并使他们的生产率更高。对约束的声明支持是相当重要的。
在进一步讨论这个问题之前 ,可以说:在关系模型中,完整性是在这些年里变化最大
的(可能应该说“演化”而不是“变化”)。正像第3章中提到的,最初,主码和外码(简
称为“码”)是人们关注的重点,逐渐地,完整性约束的重要性—普遍存在,且具有毫
无争议的重要性 —得到人们的普遍理解和广泛重视。同时,关于码的一些讨厌的细节
问题不断出现。本章的结构体现了这一重点的转变。我们先介绍完整性约束(仅在一定
程度上讨论),然后讨论“码”,因为在应用中
您可能关注的文档
最近下载
- 《机器视觉及其应用技术》课后答案.docx VIP
- 宗教中国化的历史演进与当代实践.pptx VIP
- 木犀草素、荭草苷和异荭草苷UGT代谢机理和BCRP外排转运蛋白调控其代谢机制得研究.pdf VIP
- 血液透析患者治疗中突发呼吸心跳骤停的应急预2025最新学习.docx VIP
- 《白桦》精品教案.docx VIP
- 苏教版小学五年级数学下册全册试卷提升专题训练(含答案).pdf VIP
- 施工质量及保障措施.doc VIP
- 《GB/T 6829-2024剩余电流动作保护电器的一般安全要求》.pdf
- 小学语文教学经验交流ppt课件.pptx VIP
- [钢结构施工设计]某钢排架结构厂房施工组织设计方案.doc VIP
文档评论(0)