数据库原理 实验 答案资料

上传人:w****i 文档编号:92505837 上传时间:2019-07-10 格式:DOC 页数:28 大小:663.50KB
返回 下载 相关 举报
数据库原理 实验 答案资料_第1页
第1页 / 共28页
数据库原理 实验 答案资料_第2页
第2页 / 共28页
数据库原理 实验 答案资料_第3页
第3页 / 共28页
数据库原理 实验 答案资料_第4页
第4页 / 共28页
数据库原理 实验 答案资料_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《数据库原理 实验 答案资料》由会员分享,可在线阅读,更多相关《数据库原理 实验 答案资料(28页珍藏版)》请在金锄头文库上搜索。

1、 实 验 报 告 课程名称: 数据库原理 系部名称: 计算机 专业班级: 网络工程 学生姓名: 学 号: 指导教师: 实验( 一 )实验名称: 数据库表的建立 实验时间: 2013-3-4 一、实验目的:本实验的目的是使熟悉SQL SERVER的常用数据类型,加深对SQL和SQL语言的查询语句的理解。1、熟练掌握简单表的创建。2、掌握主键约束、外键约束及及check约束的用法;3、掌握默认值约束的应用;4、了解规则、触发器的使用。二、实验内容:1、 使用查询分析器,用ddl建立studentinfo数据库2、 在studentinfo 数据库中定义3个表,students, courses,和

2、sc,表的具体要求如下:用ddl建立上述3个表并增加如下约束: students,表列名说明数据类型约束说明Sno学号字符串,长度为10主键Sname姓名字符串,长度为8非空值Ssex性别字符串,长度为2非空值Sage年龄整数允许空值Sdept所在系字符串,长度为15非空值Courses表列名说明数据类型约束说明Cno课程号字符串,长度为6主键Cname课程名字符串,长度为20非空值PreCno先修课程号字符串,长度为6允许为空值Credits学分整数允许为空值SC表列名说明数据类型约束说明Sno学号字符串,长度为10主键Cno课程号字符串,长度为6主键Grade成绩整数允许为空值具体约束为:

3、1、 请用至少2种方法定义stu数据库中student表的主键sno;2、 为表course中的字段cname添加唯一值约束;3、 对于数据表sc的sno、cno字段定义为外码,使之与表student的主码sno及表course的主码cno对应,实现如下参照完整性:1) 删除student表中记录的同时删除sc表中与该记录sno字段值相同的记录;2) 修改student表某记录的sno时,若sc表中与该字段值对应的有若干条记录,则拒绝修改;3) 修改course表cno字段值时,该字段在sc表中的对应值也应修改;4) 删除course表一条记录时,若该字段在在sc表中存在,则删除该字段对应的记

4、录;5) 向sc表添加记录时,如果该记录的sno字段的值在student中不存在,则拒绝插入;4、定义check约束,要求学生学号sno必须为10位字符,且不能以0开头,第二三位皆为0;check(sno like000_ )5、定义stu数据库中student表中学生年龄值在16-25范围内;6、定义stu数据库中student表中学生姓名长度在2-8之间;check(len(sname)=2 and len(Sname)=16 and Sage=25) default 20,Sdept char(15) not null)create table Courses(Cno char(6) p

5、rimary key,Cname char(20) unique,PreCno char(6) null,Credits int null)create table SC(Sno char(10),Cno char(6),Grade int null,primary key(Sno,Cno),foreign key(Sno) references Students(Sno)on delete cascade,foreign key(Cno) references Courses(Cno)on delete cascadeon update cascade)四、主要问题和解决方法:我们都对数据库

6、不陌生,但是使用sql语句来使用数据库的还是第一次,感觉挺新鲜。第一次使用,问题的难度不大,都可以自主完成。五、测试数据及结果:与预测结果一样。6、 心得体会与自我评价: 首次使用sql,感觉还好,但是我知道这只是一个开始,后面还有更加复杂的指令,这些都是从基础开始的,所以,即使这一次简单,还是要认真的对待。实验( 二 )实验名称: 数据库的完整性约束 实验时间: 2013-3-18 一、实验目的:1.掌握主键约束、外键约束及及check约束的用法;2.掌握默认值约束的应用;3.了解规则、触发器的使用。2、 实验内容:1、 使用查询分析器,用ddl建立studentinfo数据库2、 在stu

7、dentinfo 数据库中定义3个表,students, courses,和sc,表的具体要求如下:用ddl建立上述3个表并增加如下约束: students,表列名说明数据类型约束说明Sno学号字符串,长度为10主键Sname姓名字符串,长度为8非空值Ssex性别字符串,长度为2非空值Sage年龄整数允许空值Sdept所在系字符串,长度为15非空值Courses表列名说明数据类型约束说明Cno课程号字符串,长度为6主键Cname课程名字符串,长度为20非空值PreCno先修课程号字符串,长度为6允许为空值Credits学分整数允许为空值SC表列名说明数据类型约束说明Sno学号字符串,长度为10

8、主键Cno课程号字符串,长度为6主键Grade成绩整数允许为空值具体约束为:1、 请用至少2种方法定义stu数据库中student表的主键sno;2、 为表course中的字段cname添加唯一值约束;3、 对于数据表sc的sno、cno字段定义为外码,使之与表student的主码sno及表course的主码cno对应,实现如下参照完整性:1) 删除student表中记录的同时删除sc表中与该记录sno字段值相同的记录;2) 修改student表某记录的sno时,若sc表中与该字段值对应的有若干条记录,则拒绝修改;3) 修改course表cno字段值时,该字段在sc表中的对应值也应修改;4)

9、删除course表一条记录时,若该字段在在sc表中存在,则删除该字段对应的记录;5) 向sc表添加记录时,如果该记录的sno字段的值在student中不存在,则拒绝插入;4、定义check约束,要求学生学号sno必须为9位数字字符,且不能以0开头,第二三位皆为0;(不用做)5、定义stu数据库中student表中学生年龄值在16-25范围内;6、定义stu数据库中student表中学生姓名长度在2-8之间;7、定义stu数据库中student表中学生性别列中只能输入“男”或“女”;8、定义stu数据库student表中学生年龄值默认值为20;三、源程序:create database stud

10、entinfocreate table students(Sno char(10)primary key,Sname char(8),Ssex char(2),Sage smallint,Sdept char(15)create table courses(Cno char(6)primary key,Cname char(20)not null,PreCno char(6),Ccredits smallint);create table SC(Sno char(10),Cno char(6),Grade smallint,primary key(Sno,Cno),foreign key(Sn

11、o)references students(Sno),foreign key(Cno)references courses(Cno);INSERTINTO Students(Sno,Sname,Ssex,Sage,Sdept)VALUES(20010101,Hone,M,19,Computer);INSERTINTO Students(Sno,Sname,Ssex,Sage,Sdept)VALUES(20010102,Sue,F,20,Computer);INSERTINTO Students(Sno,Sname,Ssex,Sage,Sdept)VALUES(20010103,Smith,M,19,Math);INSERTINTO Students(Sno,Sname,Ssex,Sage,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号