数据库原理与应用 第9章 设计数据库的完整性

数据库原理与应用 第9章 设计数据库的完整性

ID:40246490

大小:684.00 KB

页数:81页

时间:2019-07-29

数据库原理与应用 第9章 设计数据库的完整性_第1页
数据库原理与应用 第9章 设计数据库的完整性_第2页
数据库原理与应用 第9章 设计数据库的完整性_第3页
数据库原理与应用 第9章 设计数据库的完整性_第4页
数据库原理与应用 第9章 设计数据库的完整性_第5页
资源描述:

《数据库原理与应用 第9章 设计数据库的完整性》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章 设计数据库的完整性【本章导读】数据库的完整性是指数据的正确性、有效性和相容性。正确性是指数据的合法性;有效性是指数据是否属于所定义的有效范围;相容性是指描述同一实体的数据应该一致。数据库的完整性关系到数据库系统中的数据是否正确、可信和一致。本章主要介绍了使用约束、规则、默认值和IDENTITY列实现SQLServer2005数据库完整性的方法。【本章要点】完整性的定义、类型使用约束实施数据库的完整性使用规则实施数据库的完整性使用默认值实施数据库的完整性使用IDENTITY列实施数据库的完整性第9章 设计数据库的完整性9.1完整

2、性概述9.2使用约束实施数据库的完整性9.3使用规则9.4使用默认值9.5使用IDENTITY列本章小结习题九9.1完整性概述数据库的完整性指数据的正确性和相容性,防止不合语义的数据进入数据库。SQLServer2005中的数据完整性包括域完整性、实体完整性、参照完整性三种。9.1完整性概述9.1.1域完整性9.1.2实体完整性9.1.3参照完整性9.1.1域完整性域完整性是指给定列的输入有效性。域完整性主要由用户定义的完整性组成。控制域有效性的方法有:限制数据类型(通过数据类型定义)、格式(通过CHECK约束和规则)、可能值的范围(

3、通过FOREIGNKEY约束、CHECK约束、DEFAULT定义、NOTNULL定义和规则)修改列值时必须满足的条件9.1.2实体完整性实体完整性将行定义为特定表的惟一实体。实体完整性强制表的标识符列或主键的完整性通过索引、UNIQUE约束、PRIMARYKEY约束或IDENTITY属性。9.1.3参照完整性参照完整性是基于外键与主键之间或外键与惟一键之间的关系。通过FOREIGNKEY和CHECK约束。参照完整性确保键值在所有表中一致。9.2使用约束实施数据库的完整性主键约束(PRIMARYKEY)、惟一键约束(UNIQUE)、默认

4、值约束(DEFAULT)、检查约束(CHECK)、外键约束(FOREIGNKEY)9.2使用约束实施数据库的完整性9.2.1PRIMARYKEY约束9.2.2UNIQUE约束9.2.3DEFAULT约束9.2.4CHECK约束9.2.5FOREIGNKEY约束9.2.1PRIMARYKEY约束PRIMARYKEY约束标识列或列集,使这些列或列集的值惟一标识表中的行。在一个表中,不能有两行包含相同的主键值,不能在主键内的任何列中输入NULL值。每个表都应有一个主键,且对于每个表只能创建一个PRIMARYKEY约束。9.2.1PRIMAR

5、YKEY约束【例9-1】在创建表的时候创建列级主键。createtableStudent(snochar(10)primarykey,snamechar(20),ssexchar(10),sagetinyint,sbirthdaysmalldatetime,departchar(10),classchar(10))9.2.1PRIMARYKEY约束【例9-2】在创建表的时候创建表级主键。createtableScore(snochar(10),cnochar(10),degreetinyint,constraintpk_sno_cno

6、primarykey(sno,cno))primarykey(sno,cno)9.2.1PRIMARYKEY约束【例9-3】当表已经创建时,可以为表添加主键约束。altertableScoreaddconstraintpk_sno_cnoprimarykey(sno,cno)或altertableScoreaddprimarykey(sno,cno)9.2.1PRIMARYKEY约束【例9-4】删除表的主键。altertableScoredropconstraintpk_sno_cno如果另一个表中的FOREIGNKEY约束引用了PR

7、IMARYKEY约束,则必须先删除FOREIGNKEY约束,才能删除该主键约束。9.2.2UNIQUE约束UNIQUE约束在列集内强制执行值的惟一性。对于UNIQUE约束中的列,不允许出现相同的值。UNIQUE约束的列中允许输入空值,所有空值是作为相同的值对待的。一个表格可以创建多个UNIQUE约束,它主要用于不是主键但又要求不能有重复值的字段。9.2.2UNIQUE约束【例9-5】在创建表的时候创建列级惟一键约束。createtableCourse(cnochar(10)primarykey,cnamechar(20)unique,

8、creditchar(2),notechar(40))9.2.2UNIQUE约束【例9-6】在创建表的时候创建表级惟一键约束。createtableCourse(cnochar(10)primarykey,cnamech

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。