- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
是否空值及默认值约束.ppt
第5章 数据完整性 5.1 数据完整性的分类 5.2 域完整性的实现 5.3 实体完整性的实现 5.4 参照完整性的实现 5.1 数据完整性的分类 5.1.1 域完整性 5.1.2 实体完整性 5.1.3 参照完整性 5.1.1 域完整性 域完整性又称为列完整性,指给定列输入的有效性,即保证指定列的数据具有正确的数据类型、格式和有效的数据范围。实现域完整性可通过定义相应的CHECK约束、默认值约束、默认值对象、规则对象等方法来实现,另外,通过为表的列定义数据类型和NOT NULL也可以实现域完整性。 5.1.2 实体完整性 实体完整性又称为行的完整性,是用于保证数据表中每一个特定实体的记录都是唯一的。通过索引、UNIQUE约束、PRIMARY KEY约束或IDENTITY属性可以实现数据的实体完整性。 5.1.3 参照完整性 当增加、修改或删除数据表中的记录时,可以借助参照完整性来保证相关联表之间数据的一致性。参照完整性可以保证主表中的数据与从表中数据的一致性。在SQL SERVER 2000中,参照完整性是通过定义外键与主键之间或外键与唯一键之间的对应关系来实现的。参照完整性确保同一键值在所有表中一致。 如果定义了两个表之间的参照完整性,则要求: (1)从表不能引用不存在的键值。例如:对于XSCJ表的行记录中出现的学号必须是XSDA表中已经存在的学号。 (2)如果主表中的键值更改了,那么在整个数据库中,对从表中该键值的所有引用要进行一致的更改。例如:如果XSDA表中的某一学号修改了,XSCJ表中所有对应学号也要进行相应的修改。 (3)如果主表中没有关联的记录,则不能将记录添加到从表中。 (4)如果要删除主表中的某一记录,应先删除从表中与该记录匹配的相关记录。 5.2 域完整性的实现 5.2.1 CHECK约束 5.2.2 规则 5.2.3 默认值约束及默认值对象 5.2.1 CHECK约束 1.使用企业管理器定义CHECK约束 5.2.1 CHECK约束 2.使用T-SQL语句在创建表时定义CHECK约束 使用SQL语句创建表结构时,可以定义CHECK约束。 语法格式: CREATE TABLE table_name /*指定表名 (column_name datatype NOT NULL | NULL /*定义列名、数据类型、是否空值 [[check_name] CHECK (logical_expression)][,…n]) /*定义CHECK约束 说明:关键字CHECK表示定义CHECK约束,其后的logical_expression是逻辑表达式,称为CHECK约束表达式。 5.2.1 CHECK约束 3.使用T-SQL语句在修改表时定义CHECK约束 对于已经存在的表,也可以定义CHECK约束。在现有表中添加CHECK约束时,该约束可以仅作用于新数据,也可以同时作用于已有的数据。 语法格式: ALTER TABLE table_name [WITH CHECK | WITH NOCHECK] ADD CONSTRAINT check_name CHECK (logical_expression) 5.2.1 CHECK约束 4.使用T-SQL语句删除CHECK约束 语法格式: ALTER TABLE table_name DROP CONSTRAINT check_name 5.2.2 规则 1.使用企业管理器定义规则并绑定到列或用户定义数据类型 5.2.2 规则 5.2.2 规则 2.使用T-SQL语句定义规则并绑定到列或用户定义数据类型 (1)定义规则 语法格式: CREATE RULE rule AS condition_expression (2)将规则绑定到列或用户定义数据类型 语法格式: sp_bindrule[@rulename=]’rule’, [@objname=]’object_name’ [,[@futureonly=]’futureonly_flag’] 5.2.2 规则 (3)删除规则 ① 解除绑定关系 删除规则之前,首先应使用系统存储过程sp_unbindrule解除被绑定对象与规则之间的绑定关系。 语法格式: sp_unbindrule [@objname=]’object_name’ [,[@futureonly=]’futureonly_flag’] ② 删除规则 在解除列或用户定义数据类型与规则之间的绑定关系后,就可以删除规则了。 语法格式: DROP RULE {rule}[,…n] 5.2.3 默认值约束及默认值对象 1.默认值约束的定义及删除 (1)定义默认值约束 在
您可能关注的文档
最近下载
- 2019外研版新教材高一英语必修一unit5单词详解.pdf VIP
- 初中物理作业设计优秀案例(3篇).pdf
- TROAX图瓦斯围栏资料.docx
- [检验检测标准]JBT 5000.15-1998; 重型机械通用技术条件 锻钢件无损探伤.pdf
- 装置开车前安全条件确认表.doc
- 新人教版(新插图)二年级上册数学 第6课时6的乘法口诀 教案(教学设计).docx
- SLAM介绍以及浅析.ppt
- 闸门运行工(高级工)职业技能鉴定理论考试题库(含答案).docx
- Unit5 The colourful world 第2课时(大单元教学课件)Part A Let's learn&Listen and chant三年级英语上册(人教PEP版2024秋).pptx
- 设计一周午餐营养食谱(教学设计)全国通用六年级上册综合实践活动.docx
文档评论(0)