- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目录引言实体完整性定义实体完整性实体完整性检查和违约处理参照完整性定义参照完整性参照完整性检查和违约处理用户定义的完整性属性上的约束条件4.1.1属性上约束条件的定义4.1.2属性上约束条件的检查和违约处理元组上的约束条件4.2.1元组上约束条件的定义4.2.2元祖上约束条件的检查和违约处理完整性约束命名子句触发器6.1定义触发器6.2激活触发器6.3删除触发器结论参考文献1引言数据库的完整性是指数据的正确性和相容性。数据的正确性是指数据是符合现实世界语义、反映当前实际状况的;数据的相容性是指数据库同一对象在不同关系表中的数据是符合逻辑的。数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。因此,完整性检查和控制的防范对象是不符合语义的、不正确的数据,防止它们进入数据库。2实体完整性实体完整性是指实体属性中的标识属性不能为空,不能重复,该约束通过指定的主键实现,其约束由系统强制实施。2.1定义实体完整性关系模型的实体完整性在CREATE TABLE中用PRIMARY KEY定义。对单属性构成的码有两种说明方法,一种是定义为列级约束条件,另一种是定义为表级约束条件。对多个属性构成的码只有一种说明方法,即定义为表级约束条件。2.2实体完整性检查和违约处理用PRIMARY KEY短语定义了关系的主码后,每当用户程序对基本表插入一条记录或者对主码列进行更新操作时,关系数据库管理系统将按照实体完整性规则自动进行检查。包括:1检查主码值是否唯一,如果不唯一则拒绝插入或修改。2:检查主码的各个属性是否为空,只要有一个为空就拒绝插入或修改。检查记录中主码值是否唯一的一种方法是进行全表扫描,依次判断表中的每一条记录的主码值与将插入记录的主码值(或修改的新主码值)是否相同。3参照完整性参照完整性是指表与表之间的一种对应关系,通常情况下可以设置两表之间的主键、外键关系、或者编写两表的触发器来实现。有对应参照完整性的两张表格,在对它们进行数据插入、更新、删除的过程中,系统都会将被修改表格与另一张对应表格进行对照,从而阻止一些不正确的数据的操作。3.1定义参照完整性关系模型的参照完整性在CREATE TABLE中用FOREIGN KEY短语定义哪些列为外码,用REFERENCES短语指明这些外码参照哪些表的主码。3.2参照完整性检查和违约处理参照完整性将两个表中的相应元组联系起来。因此,对被参照表和参照表进行增、删、该操作时有可能破坏参照完整性,必须进行检查以保证这两个标的相容性。对于参照完整性,除了应该定义外码,还应该定义外码列是否允许空值。一般的,当对参照表和被参照表的操作违反了参照完整性时,系统选用默认策略,即拒绝执行。如果想让系统执行其他策略则必须在创建参照表是显式的加以说明。关系数据库管理系统在实现参照完整性时,除了要提供定义主码、外码的机制外,还需要提供不同的策略供用户选择。具体选择哪种策略,要根据应用环境的要求确定。4用户定义的完整性用户定义的完整性就是针对某一具体应用的数据必须满足的语义要求。目前的关系数据库管理系统都提供了定义和检验这类完整性的机制,使用了和实体完整性、参照完整性相同的技术和方法来处理它们,而不必由应用程序承担这一功能。4.1属性上的约束条件4.1.1属性上约束条件的定义在CREATE TABLE中定义属性的同时,可以根据应用要求定义属性上的约束条件,即属性值限制,包括列值非空、列值唯一、检查列值是否满足一个条件表达式。4.1.2属性上约束条件的检查和违约处理当往表中插入元组或修改属性的值时,关系数据库管理系统将检查属性上的约束条件是否被满足,如果不满足则操作被拒绝执行。4.2元组上的约束条件4.2.1元组上约束条件的定义与属性上的约束条件定义类似,在CREATE TABLE语句中可以用CHECK短语定义元组上的约束条件,即元组级的限制。同属性值限制相比,元组级的限制可以设置不同属性之间的取值的相互约束条件。4.2.2元组上约束条件的检查和违约处理当往表中插入元组或修改属性的值时,关系数据库管理系统将检查元组上的约束条件是否被满足,如果不满足则操作被拒绝执行。5完整性约束命名子句完整性约束条件包括NOT NULL、UNIQUE、PRIMARY KEY、FOREIGN KEY、CHECK短语等。可以使用ALTER TABLE语句修改表中的完整性限制。6触发器触发器是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,触发器将被保存在数据库服务器中。任何用户对表的增、删、改操作均由服务器自动激活相应的触发器,在关系数据库管理系统核心层进行集中的完整性控制。触发器类似于约束,但比约束更加灵活,可以实施更为复杂的检查和操作,具有更精细的和更强大的数据控制能力。6.1定义触发器触发器又叫
文档评论(0)