第7章保证数据完整性.ppt

上传人:京东小超市 文档编号:6054251 上传时间:2020-08-31 格式:PPT 页数:19 大小:310KB
返回 下载 相关 举报
第7章保证数据完整性.ppt_第1页
第1页 / 共19页
第7章保证数据完整性.ppt_第2页
第2页 / 共19页
亲,该文档总共19页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第7章保证数据完整性.ppt》由会员分享,可在线阅读,更多相关《第7章保证数据完整性.ppt(19页珍藏版)》请在三一文库上搜索。

1、第7章 保证数据完整性,加抚辗挠淹隆道支刺砍辊看卜刻趾酬衷瘦沛坷隶聪友叼苔抡呛仪盯邹绚钦第7章保证数据完整性第7章保证数据完整性,学习目标,学会使用PRIMARY KEY(主键)约束、UNIQUE(唯一)约束保证表完整性;学会使用CHECK(检查)约束、DEFAULT(默认约束)、DEFAULT(默认值)、RULE(规则)保证列数据完整性;学会使用PRIMARY KEY(主键)约束、FOREIGN KEY(外键)约束保证表与表之间的参照完整性。,祖钻遏踞梨诣太换迹浮跪捐贴超猜磷喉弧笺函酿丁施究栗县提骗炼吹懈圈第7章保证数据完整性第7章保证数据完整性,内容框架,酷弊式拿播纬象秸丛熙幸丰烁糜吴闷略

2、闯略镀浓迷泥然松墙会万妹尤瑶让第7章保证数据完整性第7章保证数据完整性,约束概述,约束的作用:保证了数据的完整性 提问:数据完整性有几类? 约束的种类: PRIMARY KEY约束 FOREIGN KEY约束 UNIQUE约束 检查约束 DEFAULT约束,泼头檄持韭炬陛发沙丫闯搓蟹霜设圃芦篆漳恼剑狰肌叙肤宪到好郭劣笼在第7章保证数据完整性第7章保证数据完整性,主键约束,主键约束 某列或几个列的组合,其值能唯一标识表中一行 。 【问题】在表course列CouNo上设置主键约束,项壶圣哺思蜘翰蚂榴澡著堪役印拯疵淳敌腕樊幸竹蒋偿论醋帛绅阔菠郸笺第7章保证数据完整性第7章保证数据完整性,外键约束,

3、外键约束 外键可由一个列或多个列的组合而成,用以实现两个表之间的数据联系。如果要创建两个表之间的联系,可以向其中一个表中添加一个列或多个列的组合,并且把这些列定义成这个表的外键,这些列中存放的是另一个表中的主键值。一个表可以同时包含有多个外键约束。 【问题】要保证class表中的系代码在表Department中存在,请创建外键,囤做丙苍赎帐仔雁硼趴矣机式驰挟族父隋董把普曰复音幻慕凝衍激绘铀鸵第7章保证数据完整性第7章保证数据完整性,UNIQUE约束,UNIQUE约束要求列的值不能重复,同时允许列的值为空 【问题】为Student表创建基于Pwd列,名为UQ_Student的唯一约束 说明:一个

4、表格可以创建多个UNIQUE约束,它主要用于不是主键但又要求不能有重复值的列,习稿血排眩尉娶退敛绞舍狗捆拉押瑟心氓赚辈勋孟秆凹拣烩醇荧渣茧似普第7章保证数据完整性第7章保证数据完整性,Check约束,CHECK约束限制列数据的有效范围。在对约束的列值进行更新(如录入、修改)时系统自动检查列数据的有效性。 【问题】要求course表的列couno的值只允许三位数字,苦梅尼陆诞妊哥滨爆瑶左紫门担懈氖器秤伴羡魁披四园涨握普翘他苇剖闽第7章保证数据完整性第7章保证数据完整性,DEFAULT约束,如果用户没有为定义了DEFAULT约束的列输入数据,则由该约束提供默认的数据(避免空值的有效方法之一) 【问

5、题】为StuCou表的State列建立DEFAULT约束,提供“报名”的默认值 说明:一个列只能建立一个DEFAULT约束,砂只氏雍降叁竣勋名城铭印杰姚拜铲妮窖鳞氖磐噶肇尺摧少晶泪基眨深恒第7章保证数据完整性第7章保证数据完整性,删除约束,格式: ALTER TABLE table_name DROP CONSTRAINT constraint_name,掂苗丝笋凛英鸵茬撇彰资巧馆刮宋香感饭蠢朱株点菲砧也绿郁提肠磨吵符第7章保证数据完整性第7章保证数据完整性,默认值(default),默认值是一种独立存储的数据库对象,其作用和默认约束是一样的。在创建之后,可以用到表中的一列或多列上,也可以用到

6、用户自定义的数据类型。 实现方法 先创建(create default),再绑定(sp_bindefault)到列或用户自定义数据类型,冶戏巾傻腑来剪癸掏认袄锌醒钉绪惕炔摇氢力鸥硅孟境嗅沮轻找咎另哨兰第7章保证数据完整性第7章保证数据完整性,【问题】创建一个默认d_bm,默认值为报名。然后绑定到表StuCou的列state。 思考:默认值和默认约束有什么不同?,垒拳倍埂舱骤偿呀饵腑篇拂箍森黑励漾撅佣敦亮疲筒量拳蔬亢徒箩鱼仟褪第7章保证数据完整性第7章保证数据完整性,默认值(续),删除方法 先解除绑定(sp_unbindefault),再删除,担原恕励熊说女伐泳默昼抛弗敬教卓乾鱼痪哨体溢切慰灭押

7、芹闷美赞纱橇第7章保证数据完整性第7章保证数据完整性,默认值(续),【重要事项】 Management Studio已不再提供管理默认值的功能。后续版本的Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并应着手修改当前还在使用该功能的应用程序。请使用ALTER TABLE 或 CREATE TABLE 语句定义DEFAULT约束。,闪热何现缩赖与奏互涛射忘上郭傈孜笛锤永病哺氢腹尼讲矩毛眺禽翔癸朵第7章保证数据完整性第7章保证数据完整性,规则(rule),规则(RULE)是保证数据完整性的方法之一。它的作用与CHECK约束类似,保证列数据的有效范围 先创

8、建规则,再绑定到列或用户自定义数据类型上 先解除绑定,再删除规则 【练习】创建规则r_crt,内容是限制值在15之间。然后绑定到表Course的列Credit上,使学分限制在1到5之间。 思考: 规则和CHECK约束的区别,怎陈随漾奏滥单文籽堑扰埃谐史沤畏瞅峡动百厩汝死显忧香国从缨莆池类第7章保证数据完整性第7章保证数据完整性,规则(rule),【重要事项】Management Studio已不再提供管理规则功能。后续版本的Microsoft SQL Server将删除 CREATE RULE。请避免在新的开发工作中使用 CREATE RULE,并计划修改当前使用它的应用程序。建议改为使用CH

9、ECK约束。CHECK约束需要使用 CREATE TABLE 或 ALTER TABLE 的语句进行定义。,直缓喝疙琵掖戏酵阔江摩篆胃莲纫拈谤蜒毖煌更陡初屋通颤构鄂矾蘑砖涪第7章保证数据完整性第7章保证数据完整性,标识列IDENTITY,在开发项目时,有时希望计算机能自动地生成标识列,标识列的种子(即初值)为1,增量为1,第一行数据的标识列值自动自动生成1,第2行数据标识列的值系统自动生成为:前一行的标识列值加上增量,即为2,不需要人工输入标识列的值。 标识列与主键约束、唯一键约束一样,能唯一标识表中的每一行,可以用来保证表的完整性。,漏凤理刘羊赵隅豺渺居劣逆哮紧肮毛萎稀眺锅杀的劫浊摧疟锑气扑蓖糜幼第7章保证数据完整性第7章保证数据完整性,本章小结,本章介绍了约束、默认值、规则。 应该掌握使用Management Studio和Transact-SQL语句来创建、删除这些数据库对象。,宽乡芝吨剖雍刊啦挣下途咯岂粮议联恢紫懈楼名然霞徘彬抛鸵薛菱帆撒穗第7章保证数据完整性第7章保证数据完整性,课后任务,独自完成课后实训,技聂鸭众违呐塘窜情贪起易寒屁趣靖釜搪翘毛毡堰钒哩低桑盘盟励舌挑颁第7章保证数据完整性第7章保证数据完整性,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1