数据库原理实验报告

发布时间 : 星期六 文章数据库原理实验报告更新完毕开始阅读

(3) 用insert语句向视图中插入元组('95009','王五','男'),查看基本表student表中插入的数据值。

修改视图的定义加入WITH CHECK OPTION子句,向视图插入一个新元组再查看student表中插入的数据值。

对比两次插入到基本表student的结果。

(4) 用update语句把视图PL_STUDENT的所有记录性别都改为'男',查看基本表student表中的数据值(对比没有WITH CHECK OPTION子句和有WITH CHECK OPTION子句的情况)。

(5) 用delete语句删除视图PL_STUDENT的所有记录,查看基本表student表中的数据值(对比没有WITH CHECK OPTION子句和有WITH CHECK OPTION子句的情况)。

2.建立视图用来显示每个系学生的平均年龄。尝试对视图进行增删改操作,分析能否执行成功。

3.建立视图显示学生各门课程的成绩,显示字段有:学号、姓名、课程名称、成绩。尝试对视图进行增删改操作,分析能否执行成功。

4.建立视图显示所有学生的数学成绩,显示字段有:学号、姓名、成绩。如果某个学生选择了数学课程则显示相应成绩;如果某个学生没有选择数学课程,则显示其学号和姓名,在成绩上显示空白。

主要教学环节的组织:

教师首先讲解,然后指导学生自己操作。

实验4 数据完整性维护

实验目的和要求:

掌握在SQL Server 2000中定义及使用各种约束的能力,掌握用SQL语言定义关系模式的完整性约束条件,掌握DBMS完整性控制机制的三个方面。 实验内容:

1.用SQL语句定义表student(sno,sname,ssex,sage),并加入如下约束: 主键:sno;sname有唯一约束;sname,ssex,sage都不允许空; 2.用SQL语句定义表course(cno,cname),并加入如下约束: 主键:cno;cname不允许空;

3.用SQL语句定义表sc(sno,cno,cj),并加入如下约束:

主键:sno,cno;为sno定义名为lsno的默认参照完整性;为cno定义名为lcno的默认参照完整性;

4.用SQL语句向student表输入如下元组: ('95001','李勇','男',20,'CS'); ('95002','刘晨','女',21,'IS');

用SQL语句向course表输入如下元组: ('1','数据库','5',4); ('2','数学',NULL,2);

用SQL语句向sc表输入如下元组: ('95001','1',92); ('95001','2',85); ('95002','2',90);

5.执行下列语句,并查看执行结果。如果不能正确执行给出错误原因。

5

insert into student values('95001','张力','男',20,'CS'); insert into student values('95003','李勇','男',20,'CS'); insert into SC values('95004','1',92); delete from student where sno='95001'; update course set cno='3' where cno='2';

6.给student表的ssex列添加名为fm的约束,使其取值只能取'男'或'女'。

执行insert into student values('95005','张力','f',20,'CS'),查看执行结果。

7.给student表的sage列添加约束,使其年龄不得超过20岁。查看约束是否能正确添加,并分析其原因。

8.删除约束lsno和lcno。

9.为sc表添加在列sno上的外键约束lsno1,并定义为级联删除。执行delete from student where sno='95001';查看执行结果。

10.为sc表添加在列cno上的外键约束lcno1,并定义为级联修改。执行update course set cno='3' where cno='2';查看执行结果。 主要教学环节的组织:

教师首先讲解,然后指导学生自己操作。

实验5 触发器及存储过程

实验目的和要求:

掌握在SQL Server 2000中触发器和存储过程的定义及使用,通过实验重点掌握触发器及存储过程的概念及用途。 实验内容:

1.有如下两个表:

教师(编号,姓名,性别,职称,工资,系别编号) 主码:编号 系别(系别编号,系名称,人数) 主码:系别编号 要求利用触发器完成下面的功能:

1) 对教师表进行插入、删除操作时维护系别人数。 2) 教授工资不得低于1500。 3) 工资只能增加不能减少。

4) 删除系别时,用触发器实现级联删除。 2.有如下视图:

选修记录(学号,姓名,课程号,课程名称,成绩)

其数据来源于学生表、选课表和课程表,利用触发器使视图可以更新,并将更新的数据保存于基本表中。

3. 建立存储过程完成以下功能:

1) 每门课程的课程名称及选课人数。 2) 某个学生的平均成绩(学号为参数)。 主要教学环节的组织:

教师首先讲解,然后指导学生自己操作。

6

联系合同范文客服:xxxxx#qq.com(#替换为@)