下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验八:数据库的完整性约束一、实验目的1. 掌握主键约束、外键约束及及check约束的用法;2. 掌握默认值约束的应用。二、实验环境已安装SQL Server 2008 企业版的计算机;具有局域网环境,有固定IP;三、实验学时2学时四、实验要求1. 熟悉数据库完整性相关概念及约束;2. 了解约束、默认值;3. 完成实验报告;五、实验准备知识1、创建primary key约束(1)在创建数据表时创建primary key约束CREATE TABLE table_name(column_name data_type PRIMARY KEY | unique | NOT NULL , column_
2、name data_type PRIMARY KEY | unique | NOT NULL .PRIMARY KEY(column ,.n) )(2)在修改表时同时创建primary key约束ALTER TABLE table_nameADD primary key(column ,.n)2、创建Foreign key约束(1)创建表时同时定义Foreign key约束CREATE TABLE table_name(column_name data_type FOREIGN KEY REFERNCES ref_table(ref_column), column_name data_type
3、 FOREIGN KEY REFERNCES ref_table(ref_column) .FOREIGN KEY (column) REFERNCES ref_table(ref_column) )(2)通过修改表定义Foreign key约束ALTER TABLE table_nameADD FOREIGN KEY (column)REFERNCES ref_table(ref_column )3、创建check约束(1)创建数据表时创建check约束CREATE TABLE table_name(column_name data_type NOT NULL | CHECK (logica
4、l_expression).CHECK (logical_expression) )(2)在修改数据表时添加check约束ALTER TABLE table_nameADD CHECK (logical_expression)4、创建default约束(1)创建数据表时创建default约束Create table table_name( column_name datatype not null | DEFAULT (constraint_expression)(2)修改数据表时添加一个字段的同时创建default约束Alter table table_nameADD column_name
5、 datatype not null | DEFAULT (constraint_expression) with values(3)对表中指定的列定义默认值约束Alter table table_nameADD DEFAULT (constraint_expression) For column5、完整性约束命名子句CONSTRAINT <完整性约束条件名>PRIMARY KEY 短语FOREIGN KEY 短语CHECK 短语6、删除primary key约束或unique约束ALTER TABLE table_nameDROP CONSTRAINT constraint_na
6、me , .n六、实验内容及步骤使用T-SQL语句实现以下操作;1. 请用至少2种方法定义stu数据库中student表的主键sno;方法1:CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(20), Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) )方法2:CREATE TABLE Student (Sno CHAR(9), Sname CHAR(20), Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20), PRIMARY KEY(Sno)2. 将数
7、据库stu的表course的cno字段定义为主键,约束名称为cno_pk;Alter table courseAdd constraint cno_pk primary key (cno)3. 为表course中的字段cname添加唯一值约束;Alter table courseAdd constraint cname_pk unique (cname)4. 将数据库stu的表sc的sno及cno字段组合定义为主键,约束名称为sc_pk;Alter table scAdd constraint sc_pk primary key (sno,cno)5. 对于数据表sc的sno、cno字段定义为
8、外码,使之与表student的主码sno及表course的主码cno对应,实现如下参照完整性:1) 删除student表中记录的同时删除sc表中与该记录sno字段值相同的记录;2) 修改student表某记录的sno时,若sc表中与该字段值对应的有若干条记录,则拒绝修改;3) 修改course表cno字段值时,该字段在sc表中的对应值也应修改;4) 删除course表一条记录时,若该字段在在sc表中存在,则删除该字段对应的记录;Use stuCreate table student(Sno CHAR(9), Sname CHAR(20), Ssex CHAR(2), Sage SMALLINT
9、, Sdept CHAR(20), PRIMARY KEY(Sno) )Create table course (cno char(4), cname char(40), cpno char(4),ccedit smallint,foreign key (cpno) references course(cno), primary key (cno)Create table sc(sno char(9), cno char(4), Grade smallint,foreign key (sno) references student(sno)on delete cascade on update
10、 no action,foreign key (cno) references course (cno) on delete cascade on update cascade )6. 定义check约束,要求学生学号sno必须为9位数字字符,且不能以0开头,第二三位皆为0;Alter table studentAdd CONSTRAINT sno_ckCheck (sno like 1-900 0-9 0-9 0-9 0-9 0-9 0-9)7. 定义stu数据库中student表中学生年龄值在16-25范围内;CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(20), Ssex CHAR(2), Sage SMALLINT Check (sage>=16 and sage<=25), Sdept CHAR(20) )8. 定义stu数据库中student表中学生性别列中只能输入“男”或“女”;CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(20), Ssex CHAR(2) Check(Ssex in (男,女), Sage SMALLINT, Sdept CHAR(20) )9. 定义st
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个人述职报告
- 中药鉴定学:中药鉴定学题库考点及答案
- 农业研究报告
- 版工伤赔偿协议书
- 商务谈判方案策划书(2篇)
- 汽车销售业绩提升方案(2篇)
- 江苏省无锡江阴市市级2023-2024学年中考冲刺卷数学试题含解析
- 中小学校园安全防控评价机制
- 疫情防控法律体系优化的逻辑及展开
- 统编版2024年中考语文模拟考试卷(含答案解析)
- 影像产品-kavo3d exam10分钟
- 国开经济学(本)1-14章练习试题及答案
- 2022年浙江杭州中考科学试卷真题及答案解析(精编打印版)
- 了不起的狐狸爸爸-全文打印
- 方法确认与方法验证的区别
- 易燃易爆物质和物品参考名录-国家应急管理部研究中心编制
- 妊娠晚期促子宫颈成熟与引产指南(2014-)
- 2022年电气预防性试验清单报价
- 医学化疗后骨髓抑制94张课件
- 高一心理校本课程《生涯发展指导》课件:第5课 我能做什么(共26张PPT)(共26张PPT)
- 从〈清明上河图〉看北宋的城市经济课堂实录通用(教案)
评论
0/150
提交评论