SQL Server实用简明教程(第二版) 教学课件 作者 ch14.pptVIP

SQL Server实用简明教程(第二版) 教学课件 作者 ch14.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第14章 数据完整性 教学目标 在Microsoft SQL Server系统中,包括了一系列的数据完整性方法,这些方法为用户提供了方便地实现数据完整性的机制。这些方法包括主键约束、惟一性约束、外键约束、缺省约束、检查约束以及缺省对象和规则对象。本章将讲述Microsoft SQL Server系统的数据完整性方法。 教学重点 了解数据完整性的概念 了解数据完整性的类型 掌握各种约束的定义和管理技术 掌握缺省对象管理技术 掌握规则对象管理技术 掌握如何选择数据完整性方法 教学过程 数据完整性的概念 约束管理 缺省管理 规则管理 完整性技术比较研究 14.1 数据完整性的概念 在Microsoft SQL Server系统中,有3种类型的数据完整性,即域完整性、实体完整性和参考完整性。 域完整性,也可以称为列完整性,指定一个数据集对某一个列是否有效和确定是否允许空值。 实体完整性,也可以称为行完整性,要求表中的所有行有一个惟一的标识符,这种标识符一般称为主键值。 参考完整性保证在主键(在被参考表中)和外键之间的关系总是得到维护。 实现数据完整性 在Microsoft SQL Server系统中,可以使用两种方式实现数据完整性,即声明数据完整性和过程数据完整性。 声明数据完整性就是通过在对象定义中定义的数据标准来实现数据完整性,是由系统本身自动强制来实现的。声明数据完整性的方式包括使用各种约束、缺省和规则。例如,在某个表中定义了主键约束,那么这种定义就由系统自动强制实现。 过程数据完整性是通过在脚本语言中定义的数据完整性标准来实现的。在执行这些脚本的过程中,由脚本中定义的强制完整性的实现。过程数据完整性的方式包括使用触发器和存储过程等。 14.2 约束管理 约束的类型 定义约束 缺省约束管理 检查约束管理 主键约束管理 惟一性约束管理 外键约束管理 禁止在已有的数据上应用约束 禁止在加载数据时应用约束 约束的类型 定义约束 使用CREATE TABLE语句表示在创建表的时候定义约束,使用ALTER TABLE语句表示在已有的表中添加约束。 如果表中已经有数据,那么也可以增加约束。 定义约束时,既可以把约束放在一个列上,也可以把约束放在多个列上。如果把约束放在一个列上,那么该约束称为列级约束;如果把约束放在多个列上,那么把该约束称为表级约束。 CREATE TABLE语句 CREATE TABLE table_name ( column_name data_type [CONSTRAINT constraint_name { PRIMARY KEY [ CLUSTERED |NONCLUSTERED ] | UNIQUE [ CLUSTERED |NONCLUSTERED ] | FOREIGN KEY REFERENCES ref_table( ref_colunm ) | DEFAULT constant_expression | CHECK logical_expression }] 缺省约束管理 当使用INSERT语句插入数据时,如果某一个列没有指定数据,那么缺省约束就在该列中输入一个值。 缺省约束的语法形式如下: CONSTRAINT constraint_name DEFAULT constant_expression 检查约束管理 检查约束用来限制用户输入某一个列的数据,即在该列中只能输入指定范围的数据。检查约束非常类似于WHERE子句,其共同之处就是指定可接受数据的条件。 检查约束的语法形式如下: CONSTRAINT constraint_name CHECK (logical_expression) 主键约束管理 主键约束在表中定义一个主键值,这是惟一确定表中每一行数据的标识符。在所有的约束类型中,主键约束是最重要的一种约束类型,也是使用最为广泛的约束类型。该约束强制实体完整性。 主键约束的语法形式如下: CONSTRAINT constraint_name PRIMARY KEY [CLUSTERED | NONCLUSTERED ]( column[, …n]) 惟一性约束管理 惟一性约束指定表中某一个列或多个列不能有相同的两行或两个以上行数据存在。这种约束通过实现惟一性索引来强制实体完整性。当表中已经有了一个主键约束时,如果需要在其他列上实现实体完整性,由于表中不能有两个或两个以上的主键约束,那么可以通过创建惟一性约束来实现。 惟一性约束的语法形式如下: CONSTRAINT constraint_name UNIQUE [CLUSTERED | NONCLUSTERED](column[, …n]) 外键约束管理 外

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档