网站大量收购独家精品文档,联系QQ:2885784924

第12章 数据库完整性控制.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十二章 数据库完整性控制 计算机基础教学部 本章内容 12.1 约束 12.2 默认值 12.3 规则 12.4 事务处理 12.5 数据的锁定 数据完整性 数据完整性问题的提出 数据库中的数据是从外界输入的,由于种种原因,会发生输入数据无效或错误。为了保证输入的数据正确、符合规定,提出数据完整性问题。 数据完整性问题的解决 SQL Server2000中可以通过各种约束、默认值、规则等数据库对象来保证数据的完整性。 数据完整性包括实体完整性、域完整性、参照完整性和用户自定义完整性。 12.1 约束 约束(Constraint)是SQL Server提供的自动保持数据库完整性的一种机制,它定义了可输入表或表的单个列中的数据的限制条件。使用约束优先于使用触发器、规则和默认值。 约束独立于表结构,可以在不改变表结构的基础上,添加或删除约束。当表被删除时,表所带的所有约束定义也随之被删除。 12.1 约束 (1) 主键约束(Primary Key,PK) 表的一列或几列的组合的值在表中唯一地指定一行记录,这样的一列或多列称为表的主键,通过它可强制表的实体完整性。 主键不能为空,且不同两行的键值不能相同。 表本身并不要求一定要有主键,但最好给表定义主键。 在规范化的表中,每行中的所有数据值都完全依赖于主键。 例如:学生表中的学号。 12.1 约束 创建主键约束的方法 在企业管理器中,打开表设计器。 选择创建主键的列。 单击工具栏设置主键按钮 。 12.1 约束 (2) 外键约束(Foreign Key,FK) 外键约束定义了表与表之间的关系。 通过将一个表中一列或多列添加到另一个表中,创建两个表之间的连接,这个列就成为第二个表的外键,即外键是用于建立和加强两个表数据之间的连接的一列或多列,通过它可以强制参照完整性。 外键约束的主要目的是控制存储在外键表中的数据。 12.1 约束 创建外键约束的方法 打开企业管理器,展开数据库,右键单击关系图,选择【新建数据库关系图】菜单项。 根据向导提示,选择欲创建外键约束的表。 出现如下界面,拖动关联列。 12.1 约束 级联操作 根据主键表中数据的修改而对外键表中数据相应地做相同的修改。 SQL Server提供了两种级联操作:级联删除和级联修改 级联删除:当主键表中某行被删除时,外键表中所有相关行将被删除。 例如:课程表中的c01课程被删除,选课表选了c01课程的记录都被删除。 级联修改:当主键表中某行的键值被修改时,外键表中所有相关行的该外键值也将被自动修改为新值。 例如:将课程表中c02改为c30,选课表中c02的值也被自动更改为c30。 12.1 约束 (3) 唯一性约束(Unique) 唯一性约束指定一个或多个列的组合的值具有唯一性,以防止在列中输入重复的值,为表中的一列或者多列提供实体完整性。 例如:身份证号码通常被设定唯一性约束。 唯一性约束指定的列可以有NULL属性。主键也强制执行唯一性,但主键不允许空值,故主键约束强度大于唯一约束。因此主键列不能再设定唯一性约束。 一个表可以定义多个唯一性约束。 12.1 约束 创建唯一性约束 在企业管理器中,打开表设计器。 单击工具栏管理索引/键按钮 。 12.1 约束 (4) 检查约束(Check) 检查约束对输入列或整个表中的值设置检查条件,以限制输入值,保证数据库的数据完整性。 当对具有检查约束列进行插入或修改时,SQL Server将用该检查约束的逻辑表达式对新值进行检查,只有满足条件(逻辑表达式返回TRUE)的值才能填入该列,否则报错。 可以为每列指定多个CHECK约束。 例如:为学生表的性别列定义检查约束: 性别 in(男 , 女) 或者 性别= 男 or 性别 = 女 12.1 约束 创建检查约束 在企业管理器中,打开表设计器。 单击工具栏管理索引/键按钮 ,选择【CHECK约束】。 12.2 默认值 默认值(Default) 通过定义列的默认值或使用数据库的默认值对象绑定表的列,以确保在没有为某列指定数据时,来指定列的值。 默认值可以是常量,也可以是表达式,还可以为NULL值。 例如:将学生表的性别列设置默认值女 。 12.2 默认值 创建默认约束 在企业管理器中,打开表设计器。 选择设定默认值的列,输入默认值。 12.2 默认值 使用默认对象 默认对象是单独存储的,可以绑定到某列。删除表时,默认值会自动删除,但默认对象不会被删除。 默认对象的操作 (1) 创建默认对象 12.2 默认值 (2) 绑定默认对象 12.2 默认值 (3) 重命名默认对象 (4) 删除默认对象 12.3 规则 规则是数据库中对存储在表的列或用户定义数据类型中的值的规定和限制。 规则是

文档评论(0)

love + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档