SQL Server 数据库试题(1—6)附答案(5)

2018-11-29 16:14

price和publisher字段插入数据。阅读并回答以下问题:(10分) Use bookdb Go

If exists(Select name From ①

Where name=’my_proc’and type=’ ② ’)

Drop Proc my_proc Go

Create Proc my_proc

@a int, @b char(50),@c float,@d publisher ③

Insert Into student(book_id,book_name,price,publisher) Values(@a,@b,@c,@d) Go

问题:(1)填写该程序段中空白处的内容:① ② ③

四、编程题(共4题)

有一个“学生-课程”数据库,数据库中包括三个表: (1) “学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为: Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。

(2) “课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。

(3) “学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为: SC(Sno,Cno,Grade) (SNO, CNO) 为关键字。

完成下列操作: 1、 请把其中建立 “学生”表Student的语句写下来,表Student是由学号Sno、姓名Sname、

性别Ssex、年龄Sage、所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。

2、 在student表中查询Sdept是‘计算机’的学生的所有信息,并按Sno降序排列。(5分)

3、 在以上三个表中查询Ccredit为5并且Grade大于60的学生的学号、姓名和性别。(7

分)

4、为Course表创建一个名称为my_trig的触发器,当用户成功删除该表中的一条或多条记录时,触发器自动删除SC表中与之有关的记录。

(注:在创建触发器之前要判断是否有同名的触发器存在,若存在则删除之。)(9分) 参考答案 一、选择题(每题2分,共30分)

CCDDA BBBAB CBACD

21

2)任写一条调用该存储过程的语

句: 。

二、填空题(每空2分,共30分)

1、数据共享、可控冗余度 2、主键 3、日志文件 4、用户 5、数据库管理系统 6、统一字符编码标准 7、备份数据库、备份事务日志 8、ALTER 、CREATE DATABASE 9、游标结果集、游标位置 10、一致性、隔离性 三、程序阅读题(第一题5分,第二题10分,共15分)

1、系统在15:43分为orderform表中订购数量book_number大于25本的订购信息的order_date、book_number和book_id三个字段创建一个名为my_view的视图。(答题意思差不多 即可得满分,其他情况酌情给分)

2、(1)① Sysobjects ② P ③ As (每空2分)

(2)Exec my_proc 7, ’SQL Server 2000教程’,38,‘北京科海集团公司’ 或 Exec my_proc @a=7, @b=’SQL Server 2000教程’,@c=38,@d=’北京科海集团公司’ (4分)

注:该小题不管怎样调用该存储过程,Exec 和 my_proc不可少,也不可多用Proc关键字;若不全对则酌情给分。

四、编程题(共4题,共25分)

1、(共6分)

CREATETABLE Student (1分) (Sno CHAR(5) NOT NULL UNIQUE, (1分) Sname CHAR(20), (1分) Ssex CHAR(1), (1分) Sage INT, (1分) Sdept CHAR(15)); (1分)

2、select * from student where Sdept=’计算机’ order by Sno desc (5分)

1分

1分

1分

2分

3、(共7分) 方法1:

select student.Sno,Sname,Ssex from student, course, sc

(1分) (1分)

where (student.Sno=sc.Sno) and (course.Cno=sc.Cno)

and (course.Ccredit=5) and (sc.Grade>60) (1+1+1+1+1分)

(1分)

(2分+2分) (1分+1分)

方法2:

select student.Sno,Sname,Ssex

On student.Sno=sc.Sno

4、(共9分)

If exists(Select name From sysobjects

Where name=’my_trig’and type=’tr’) (整个If语句 1分)

Drop trigger my_trig Go

Create trigger my_trig

from student Inner Join (sc Inner Join course On course.Cno=sc.Cno)

where (course.Ccredit=5) and (sc.Grade>60)

(0.5分)

(0.5分)

(1分)

22

On Course For Delete As

(0.5分)

(1分) (0.5分) (1分)

(1分+2分)

Delete From sc Go

Where Sno in (Select Sno From Deleted)

23


SQL Server 数据库试题(1—6)附答案(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2014教师职业道德试题及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: