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

数据库上机实验1.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库上机实验1

实验七:数据完整性实验(SQL SERVER) 实验目的: 加深对数据完整性的理解。 实验内容: 数据库的完整性设置。 实验步骤: 1)可视化界面的操作方法: 一、实体完整性 1.将student表的“sno”字段设为主键:在表设计界面中,单击左边的行选定块,选定“sno”字段,单击工具按钮设置主键。如图6-1所示: 图6-1 将“sc”表的“sno”和“cno”设置为主键:在表设计界面中,单击并拖动左边的行选定块,选定sno和cno字段,单击工具按钮设置主键。如图6-2所示: 图6-2 二、域完整性 3. 将“ssex”字段设置为只能取“男”,“女”两值:在表设计界面,点击图4-3箭头所指按钮,出现属性(Property)对话框,选择新建(New)按钮,然后在约束表达式(Constraint expression)框中输入“ ssex in (男,女) ”。如图6-3所示。 图6-3 三、参照完整性 4.利用数据库关系图来完成参照完整性见图6.4。 将要形成参照完整性的数据库加入 将student表作为主键表,sc表作为外键表形成参照完整性,将鼠标参照完整性放在student表的sno上,按左键不放,拖至sc表的sno放开 修改下面中insert和update选项,对student表和sc表的sno字段进行插入和修改操作,看有何区别 同理,将course表作为主键表,sc表作为外键表形成参照完整性最后如下图 2)命令方式操作方法: 一、实体完整性 1.将“student”表的“sno”字段设为主键: 当“student”表已存在则执行: alter table student add constraint pk_sno primary key (sno) 当“student”表不存在则执行: Create table student(sno CHAR(5) primary key , sname CHAR(10),ssex CHAR(2), sage int,sdept CHAR(4)) 注:可用命令“drop table student”删除“student”表 2. 添加一身份证号字段,设置其惟一性.(注: 操作前应删除表中的所有记录) Alter table student add id char(18) unique (id) 3. 将“sc”表的“sno”和“cno”设置为主键: 当“sc”表已存在则执行: alter table sc add constraint PK_SnoCno primary key (sno,cno) 当“sc”表不存在则执行: Create table sc(sno CHAR(5),cno CHAR(2), grade INT NULL, constraint PK_SnoCno primary key (sno,cno)) 二、域完整性 4. 将“ssex”字段设置为只能取“男”,“女”两值: 当“student”表已存在则执行: alter table student add constraint CK_Sex check (ssex in (男 ,女)) 当“student”表不存在则执行: Create table student(sno CHAR(5) primary key , sname CHAR(10), ssex CHAR(2) check (ssex in (男 ,女)) , sage int, sdept CHAR(4)) 5. 设置学号字段只能输入数字: alter table student add constraint CK_Sno_Format check (sno like [0-9][0-9][0-9][0-9][0-9]) 6. 设置身份证号的输入格式: alter table student add constraint CK_ID_Format check ((id like [0-9][0-9][0-9][0-9][0-9][0-9][1-2][0-9][0-9][0-9][0-1][0-9][0-3][0-9][0-9][0-9][0-9]_) OR (id like [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9][0-9][0-9][0-9])) 7. 设置18位身份证号的第7位到第10位为合法的年份(1900-2050) alter table student add constraint CK_ID_Format2 check ( not len(id)=18 or ( (convert(smallint,substring(id,

文档评论(0)

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

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

1亿VIP精品文档

相关文档