- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
?第 5 章 数据库的数据完整性 5.1 数据完整性的基本概念 5.2 使 用 约 束 5.3 默 认 值 5.4 规 则 5.5 自定义数据类型 5.6 标识列IDENTITY 通过本章的学习,读者应该掌握以下内容: ? 使用约束来保证数据的完整性 ? 使用规则、默认值和自定义数据类型来保证数据完整性 ? 对实现数据完整性的各种方法进行分析 5.1 数据完整性的基本概念 数据库的完整性表明数据库的存在状态是否合理,是通过数据库内容的完整性约束来实现的。数据库系统检查数据的状态和状态的转换,判定它们是否合理,是否应予接受。对于每个数据库操作要判定其是否符合完整性约束,全部判定无矛盾时才可以执行,数据完整性包括实体完整性、域完整性、参照完整性、用户定义的完整性。 1.实体完整性 实体完整性要求表中的每一行必须是惟一的,它可以通过主键约束、惟一键约束、索引或标识属性来实现。 2.域完整性 域完整性就是保证数据库中的数据取值的合理性。 3.参照完整性 参照完整性定义了一个关系数据库中,不同的表中列之间的关系(父键与外键)。要求一个表中(子表)的一列或一组列的值必须与另一个表(父表)中的相关一列或一组列的值相匹配。被引用的列或一组列称为父键,父键必须是主键或惟一键,通常父键为主键,主键表是主表。 引用父键的一列或一组列称为外键,外键表是子表。如果父键和外键属于同一个表,则称为自参照完整性。子表的外键必须与主表的主键相匹配,只要依赖某一主键的外键存在,主表中包含该主键的行就不能被删除。 4.用户定义的完整性 用户可以根据自己的业务规则定义不属于任何完整性分类的完整性。由于每个用户的数据库都有自己独特的业务规则,所以系统必须有一种方式来实现定制的业务规则,即定制的数据完整性约束。 用户定义的完整性可以通过自定义数据类型、规则、存储过程和触发器来实现。 5.2 使 用 约 束 5.2.1 主键(PRIMARY KEY)约束 向表中添加主键约束时,SQL Server将检查现有记录的列值,以确保现有数据符合主键的规则,所以在添加主键之前要保证主键列没有空值和重复值。 5.2.2 惟一键(UNIQUE)约束 和添加主键一样,向表中添加惟一键约束时,SQL Server也将检查现有记录的列值,以确保现有数据符合惟一键的规则,所以在添加惟一键之前要保证惟一键列没有重复值,但可以有空值。 5.2.3 检查(CHECK)约束 CHECK约束通过限制可输入或修改的一列或多列的值来强制实现域完整性,它作用于插入(INSERT)和修改(UPDATE)语句。 在默认情况下,检查(CHECK)约束同时作用于新数据和表中已有的老数据,可以通过关键字WITH NOCHECK禁止CHECK约束检查表中已有的数据。当然,用户对禁止检查应该确信是合理的。 与其他约束不同的是,CHECK约束可以通过NOCHECK和CHECK关键字设置为无效或重新有效,语法格式如下。 ALTER TABLE 表名 NOCHECK CONSTRAINT 约束名 | CHECK CONSTRAINT 约束名 5.2.4 默认值(DEFAULT)约束 默认值约束的作用就是当向表中添加数据时,如果某列没有指定具体的数值而是指定了关键字DEFAULT,则该列值将自动添加为默认值。 和检查约束一样,默认值约束也是强制实现域完整性的一种手段。DEFAULT约束不能添加到时间戳TIMESTAMP数据类型的列或标识列上;也不能添加到已经具有默认值设置的列上,不论该默认值是通过约束还是绑定实现的。 5.2.5 外键(FOREIGN KEY)约束 外键(FOREIGN KEY)约束是为了强制实现表之间的参照完整性,外键FOREIGN KEY可以和主表的主键或惟一键对应,外键约束不允许为空值,但是,如果组合外键的某列含有空值,则将跳过该外键约束的检验。 5.2.6 级联参照完整性约束 级联参照完整性约束是为了保证外键数据的关联性。当删除外键引用的键记录时,为了防止孤立外键的产生,同时删除引用它的外键记录。 类似地可以实现级联更新的功能,其语法是将ON DELETE CASCADE改为ON UPDATE CASCADE。 5.3 默 认 值 5.3.1 创建默认值 创建默认值可以通过企业管理器或SQL语句来实现,使用SQL语句创建默认值对象的语法如下。 CREATE DEFAULT 默认值名称 AS 常量表达式 5.3.2 绑定和解绑默认值 一个建好的默认值,只有绑定到表的列上或用户自定义的数据类型上后才起作用,如果不再需要该默认值,则要将该默认值从相应的列或
您可能关注的文档
- 数字移动通信系统 北京高等教育精品教材建设项目立项 作者 张玉艳 于翠波 第6章 GPRS网络结构.ppt
- 数字移动通信系统 北京高等教育精品教材建设项目立项 作者 张玉艳 于翠波 第8章 GPRS网络中主要工作过程.ppt
- 数字移动通信系统 北京高等教育精品教材建设项目立项 作者 张玉艳 于翠波 第9章 GPRS应用.ppt
- 数字移动通信系统 北京高等教育精品教材建设项目立项 作者 张玉艳 于翠波 第10章 EDGE.ppt
- 数字移动通信系统 北京高等教育精品教材建设项目立项 作者 张玉艳 于翠波 第12章 TD-SCDMA移动通信系统.ppt
- 数字移动通信系统 北京高等教育精品教材建设项目立项 作者 张玉艳 于翠波 第13章 3G无线系统的高速解决方案.ppt
- 数据库实验指导 第2版 普通高等教育“十一五”国家级规划教材 作者 杨海霞 第2章 管理与维护表.ppt
- 数据库实验指导 第2版 普通高等教育“十一五”国家级规划教材 作者 杨海霞 第3章 查询、视图和索引.ppt
- 数据库实验指导 第2版 普通高等教育“十一五”国家级规划教材 作者 杨海霞 第4章 数据库设计.ppt
- 数据库实验指导 第2版 普通高等教育“十一五”国家级规划教材 作者 杨海霞 第5章 SQL程序设计与开发.ppt
最近下载
- 新解读《GB_T 40674 - 2021烟花爆竹 环保评价方法》最新解读.pptx VIP
- AQT-煤矿在用摩擦式提升机系统安全检测检验规范.pdf VIP
- 经典老歌1000首怀旧.pdf VIP
- 2025新高考高一对数运算易错培优竞赛试题(解析板)-A4.docx VIP
- 23MR404 城市道路—路缘石.pdf VIP
- 2025新高考高一函数定义域值域解析式易错培优竞赛试题(解析板).docx
- 渠道工程-施工管理工作报告.doc VIP
- 电液控蝶阀、电动蝶阀规范书.doc VIP
- 糖尿病最新指南共识解读精粹题库答案-2025年华医网继续教育.docx VIP
- 2025届高考语文复习:修改病句+课件.pptx VIP
文档评论(0)