- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五 数据库完整性 一、实验目的 掌握SQL Server2000中有关约束、规则、默认值的使用等完整性技术。 二、实验内容 1)使用SQL Server2000企业管理器和T_SQL两种方法进行检查约束、缺省约束、唯一约束、非空约束、主键约束和外键约束等6种操作 2)使用SQL Server2000企业管理器和T_SQL两种方法进行规则设置操作: 三、实验要求: 掌握域完整性、实体完整性和参照完整性的设置方法和有关语句 四、实验学时:2学时 五、实验步骤: 完整性是指数据的正确性和有效性,是为防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。数据完整性可以分为3类: ? 域完整性:是指一个列的输入有效性,是否允许为空值; ? 实体完整性:是指将行定义为特定表中的唯一实体; ? 参照完整性:也叫引用完整性,是指在输入或者删除记录时,保持表之间已经定义的关系,它涉及到多表之间数据一致性的维护。 1.约束: 约束是强制数据完整性的第一选择。约束有:检查约束、缺省约束、唯一约束、非空约束、主键约束和外键约束等6种。 默认值:是数据库对象之一,它指在向数据库中的表插入数据时,如果用户没有明确给出某列的值,SQL Server将自动指定该列使用默认值。 ?使用企业管理器实施约束 例:为Student表的“性别”字段创建一个缺省约束,缺省值为1男1 在企业管理器中,展开服务器中的数据库文件夹,再展开要操作的数据库,如Student数据库,单击“表”,在右边窗口中显示所有在Student数据库中的表。右击要设置缺省值的表Student,在弹出的快捷菜单中选择“设计表”,单击设置缺省值的字段,将弹出下图1所示窗口,在下边属性设置栏的默认值输入框中输入相应的默认值即可。 图1 外键约束: 例:将SC表的Sno字段设置为外键,该外键参考表Student中的主键Sno。 【提示】 如果你用的是前几次实验所创建的数据库及表,为了能使这里所有操作得以进行,你可以重新建一个Student表,里面不加任何约束.或先删除已建立的约束. 在企业管理器中,展开服务器中的数据库文件夹,再展开Student数据库,单击“表”。右击要设置外键的表SC,在弹出的快捷菜单中选择“设计表”,在打开的表结构对话框中,单击右键,然后点击“关系”,系统将弹出下图所示窗口,单击“新建”按钮,系统给出默认的关系名,选择要参考主键的表名Student及表中的主键Sno,要设置外键的表名SC及外键列名Sno,单击1关闭1按钮,外键约束创建完成。 图2 ?用T_SQL语句实施约束 例:为Student表的 “Sex”字段创建一个缺省约束,缺省值为1男1 Alter table student Add constraint default_sex Default 男 for Ssex 例:为 “Sdept”字段创建一个检查约束,使得所在系必须是1计算机1、1数学1或1信息1之一。 Alter table Student Add constraint ck_student Check (Sdept in (计算机,数学,信息)) 【提示】 为了观察添加了缺省约束的效果,你可以用以下方法: ? 插入一条数据,不指定Ssex的值,如 INSERT INTO Student(Sno,Sname,Sdept,Sage) VALUES (200215140,Jim,CS,22) 接着用 select * from student where sno=200215140 查看刚才插入的记录的Ssex字段的值是什么 【注意】 这里添加检查约束时和下面的实验内容中,如果表中原有的数据与所添加的约束不符,则会出错!所以,操作前请将原表中的Sdept字段内容改为计算机,数学,信息之一。 更改内容时请注意,因为Sdept定义为char(20),所以原来比如Sdept的值为’CS’的话,实际上值为CS+18个空格,如下图3所示,请同学们更改时注意。 例:为Student表的“Sname”字段增加一个唯一性约束 Alter table Student Add constraint IX_constraint unique nonclustered (Sname) 例:为SC表建立外键,依赖于Student表的fk_S_c约束。 Alter table SC Add constraint fk_S_c Foreign key(Sno) References Student(Sno
您可能关注的文档
最近下载
- 工程水文及水利计算 小流域设计洪水计算、由暴雨资料推求设计洪水、由流量资料推求设计洪水、准备知识 设计洪水分析计算.doc VIP
- 2019款林肯航海家_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf
- 财务管理培训之财务基础知识培训课件.pptx VIP
- 慢性阻塞性肺疾病PPT课件共29张PPT).pptx VIP
- 河北高职单招考试二类单招联考文化试题.docx VIP
- 宅经.pdf VIP
- 金川公司社招技能操作人员考试题.pdf
- 暴雨洪水计算表格.xls VIP
- 年产8万吨乙酸乙酯生产车间的设计论文.docx VIP
- 2026届高考语文复习默写专题训练---看图填诗句类默写.docx
文档评论(0)