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

2018-11-29 16:14

1、 把course表中课程号为3的课程的学分修改为3。(3分)

2、 在student表中查询年龄大于18的学生的所有信息,并按学号降序排列。(4分)

3、 在以上三个表中查询选的课程的“学分”为3,并且成绩大于80的学生的学号、姓名和性别。(6分) 4、为student表创建一个名称为my_trig的触发器,当用户成功删除该表中的一条或多条记录时,触发器自动删除SC表中与之有关的记录。

(注:在创建触发器之前要判断是否有同名的触发器存在,若存在则删除之。)(7分)

参考答案

一、 单项选择题(每题2分,共15题)

1. C 2.B 3.D 4.C 5.B 6.B 7.C 8.C 9.A 10.D 11.D 12.D 13.C 14.D 15.D 二、 填空题(每空2分,共15空) 1.数据共享 可控冗余 2.GO 3. 64KB 4.非聚集索引 5.AVG函数 6.游标结果集 游标位置 7.一致性 隔离性 8.CREATE DATABASE ALTER DATABASE 9.约束 默认值 三、 简答(10分)

1.DECLARE cname char(16)

SET cname=’数据库系统概述’ 或者是

DECLARE cname char(16)

SELECT cname=’数据库系统概述’ 2.CHAR(13)+CHAR(10) 四、 程序阅读题(5分) 1. name P as

2. EXEC my_proc 7,‘李好’,‘考试书店’或者 EXEC my_proc @a=7,@b=‘李好’,@c=‘考试书店’

五、 编程题(25分,共4题) 1、 (4分)

update course (1分)

11

set 学分=4 (2分) where课程号=2 (1分)

2、select * from student where 年龄>18 order by 学号 desc (5分) 1分 1分 1分 2分 3、(6分) 方法1:

select distinct student.学号,姓名,性别 (1分) from student, course, sc (1分)

where (student.学号=sc.学号) and (course.课程号=sc.课程号) and (course.学分=4) and (sc.成绩>80) (1+1+1+1分) 方法2:

select distinct student.学号,姓名,性别 (1分)

from student Inner Join (sc Inner Join course On course.课程号=sc.课程号)

On student.学号=sc.学号 (2分+2分)

where (course.学分=4) and (sc.成绩>80) (1分+1分) 4、(10分)

If exists(Select name From sysobjects

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

Create trigger my_trig (1分) On student (0.5分) For Delete (1分) As (0.5分)

Delete From sc (2分)

Where 学号 in (Select 学号 From Deleted) (1分+2分) Go

数据库试题(四)

一、填空题(共9题,每空1分,共15分) 1.将数据库从SQL Server实例中删除,即在逻辑上将数据文件和日志文件与服务器相脱离,但文件并不从磁盘上删除,此操作称为_________,可通过_______将其重新加载到SQL Server实例中。

2.SQL Server中用于服务器的所有初始化信息和系统级信息的的系统数据库是_______________。

3.打开数据库student,使之成为当前数据库,可以使用语句______________。

4.使用T-SQL语句创建存储过程时,若要求对存储过程的定义文本进行加密,应使用_________子句。

5.若要删除sutdent表的全部数据,数据删除后不可撤销,应使用语句____________,若想删除student数据表,应使用语句________________。

6.若要对数据库中的对象进行改名,就使用的系统存储过程是_____________。 7.Sql Server的数据库文件分为数据文件和__________,其中数据文件又分为_________和__________。

8.在Sql Server中,按触发的时机,触发器可分为__________和________。 9.在Sql Server的事务处理中,开启一个事务可用Begin Transaction,提交事

12

和撤销事务应使用____________和___________。 二、简答题(共3题,每题7分,共21分)

1.在数据库端编程,主要有自定义函数、存储过程和触发器三种形式,请比较一下这三种方式的异同。

2.SqlServer有哪些系统数据库,各自的作用是什么?

3.数据库中的常用完整性有几种?在Sql Server主要通过什么方式实现? 三、应用题(共6题,本题共54分。)

1.创建名为“Love”的数据库,其中主数据文件为Lovedat.mdf,初始大小为8M,增长大小为1M,日志文件为Lovedat.ldf,初始大小是5M,最大存储空间是30M,增长是5M。请写出相应的SQL语句。(本题8分)

2.使用sql语句创建表authors,结构如下表所示(本题8分) 列名数据类型 大小是否为空 默认值 说明 authorID int 4 N 编号(主键),自动增长 authorName nvarchar 50 N 姓名 Phone nvarchar13 Y 电话 address nvarchar255 Y 地址

3.使用SQL语句对2中创建的authors表进行如下修改:(每小题5分,共15分) (1)添加Sex 列 char(2),city列 varchar(20)。

(2)删除city列。

(3) 修改作者信息表authors中的address列将该列的属性的长度更改为500。

4.系部表的创建语句如下,请完成以下操作(每小题5分,共15分)

CREATE TABLE 系部 (系部代码 char(2) CONSTRAINT pk_xbdm PRIMARY KEY, 系部名称 varchar(30) NOT NULL,系主任 char(8)) (1)将系部表中计算机系的系主任改为‘张中裕’

(2)将系部表中的系部名称列中的‘系’全部更改为‘科学系’(使用replace函数,用法:replace(串1,串2,串3),其功能是将串1中的串2 替换为串3 )

(3)在系部表中删除系主任姓‘张’的系部数据

5.有二个数据表XS(xh, xm)和XS_KC(xh, kch, cj),用两种方法,写出如下查询:“查找数据库中所有学生的学号(xh)、姓名(xm)以及其所选修的课程号(kch)和成绩(cj)”。(本题8分)

四、编程题(共2题,每题5分,共10分) 1. 在数据表上机记录中创建一个名为insert_sjkh的insert触发器其作用是:当用户在“上

13

机记录”表中插入记录时,若“上机卡”表中没有该上机号,则提示用户不能插入,否则,提示记录插入成功。(附:上机记录表结构:(上机号 char(13),上机日期 datetime,开始时间 datetime,结束时间 datetime,上机状态 bit)。上机卡表结构:(上机号 char(13),姓名??)

2. 在student数据库中的学生、课程注册、课程表中创建一个带参的存储过程cjcx。其功能是:当任意输入一个学生的姓名时,返回该学生的学号、选修的课程名和课程成绩。然后使用存储过程,查询学生“陈斌”的学号、选修的课程名和课程成绩。

数据库试题 4 答案

一、1.数据库分离,数据库附加 2.master 3.use student 4. with encryption; 5.truncate table student,drop table student 6.sp_rename 7. 日志文件、主要数据文件、次要数据文件 8.后触发器、替代触发器 9.Commit transaction,rollback transaction 二、1.答:相同点:存储过程、触发器和自定义函数都能完成特定的功能,并且都存储在服务器端的数据字典中。区别:存储过程和自定义函数都可以定义参数,触发器不可以;从调用方式上,存储过程和自定义函数都需要由应用程序或其他功能体进行调用,而触发器是当相应事件发生时自动执行,不须干预;自定义函数需要定义返回类型,函数体中至少要有一条用于返回返回值的语句,而存储过程和触发器不需要。 2.答:主要的系统数据库有master、model、tempdb和msdb。其中Master数据库保存了Sql Server2005的初始化信息和所有系统级信息。Master数据库是Sql Server 2005中最重要的系统数据库,对其更新和删除操作而导致Master数据库的不可用都将使得整个Sql Server2005系统无法启动和运行。Model数据库是用于保存所有用户数据库和Tempdb数据库的模版。每当用户创建数据库的时候,Sql Server 2005将用Model数据库提供的信息初始化被创建的数据库。Msdb数据库是Sql Server2005代理服务工作时使用的数据库,用于为Sql Server代理服务在警报和作业等操作时提供存储空间。Tempdb数据库是一个临时的系统数据库,用于为所有临时表、临时存储过程以及其他的临时操作提供存储空间。

3.答:视图是一个虚拟表,并不存储任何物理数据。视图与真正的表很类似,也是由一组命名的列和数据行组成,其内容由查询所定义。但是视图并不是以一组数据形式存储在数据库中,数据库中只存储视图的定义,而不存在视图中的数据,视图中的数据仍存储在基本表中。当基本表中的数据发生变化时,从视图中查询出来的数据也随之改变。视图和表相比有独特的优势主要有以下几个方面:(1)保证数据的安全。(2)简化查询操作。(3)保证数据的逻辑独立性。 三、1. create database love on (name=lovedat,filename='d:\\database\\lovedat.mdf',size=8,Maxsize=unlimited,filegrowth=1) log on (name=lovedat_log,filename='d:\\database\\lovedat.ldf',size=5,Maxsize=30,filegrowth=5) 2. create table authors (authorid int identity(1,1) primary key not null, authorname nvarchar(50) not null,phone nvarchar(13) null, address nvarchar(255))

3. (1) alter table authors add sex char(2) null,city nvarchar(20) null; (2) alter table authors drop column city

(3) alter table authors alter column address nvarchar(500) not null 4. (1) Update 系部 set 系主任=’ 张中裕’ where 系部名称=’计算机系’ (2) Update 系部 set 系部名称=replace(系部名称,’系’,’科学系’) (3) Delete from 系部 where 系主任 like ‘张%’

14

5. (1) select xs.xh,xm,kch,cj from xs, xs_kc where xs.xh=xs_kc.xh; (2) select xs.xh,xm,kch,cj from xs join xs_kc on xs.xh=xs_kc.xh; 四、1.Create trigger insert_sjkh on dbo.上机记录 for insert As

begin

Declare @asjkh char(13) Declare @acount int

Select @asjkh=上机号from inserted

Select @acount=count(*) from 上机卡where 上机号=@asjkh If @acount=0

Print '上机卡中无此卡号,不能插入' Else

Print '数据插入成功' end

2. Create PROCEDURE [dbo].[cjcx] @axm char(8) AS BEGIN SELECT 学生.学号,课程.课程名,课程注册.成绩 from 学生,课程,课程注册

where 学生.学号=课程注册.学号 and 课程注册.课程号=课程.课程号 and 姓名=@axm END

执行存储过程cjcx,查询“周红瑜”的学号、选修的课程名和课程成绩。 Exec cjcx @axm=’张斌’

数据库试题(五)

1. 关系范式从低到高依此是( D )

A. 4NF BCNF 3NF 2NF 1NF B. BCNF 4NF 3NF 2NF 1NF C. 1NF 2NF 3NF 4NF BCNF D. 1NF 2NF 3NF BCNF 4NF 2. 数据库模型提供了两级映象, 它们的作用是( D ) A. 控制数据的冗余度 B. 实现数据的共享 C. 使数据结构化 D. 实现数据的独立性

3. 下列SQL Server语句中出现语法错误的是( D )。

A. CREATE TABLE Student B. SELECT * FROM Student C. CREATE DATABASE XSGL D. DELETE * FROM Student 4. SQL中的视图机制属于DBS的( B )。 A.完整性措施 B.安全性措施 C.恢复措施 发性措施

D.并

5. 关系代数运算是以( C )为基础的运算。

A. 关系运算 B. 谓词演算 C. 集合运算 D. 代数运算 6. 关系数据库系统中所使用的数据结构是( D ) A. 树 B.图 C. 表格 D. 二维表

7. 设有关系R和S,关系代数表达式R-(R-S)表示的是( A ) A. R∩S B. R-S C. R∪S D. R÷S 8. 在关系模型中,一个关键字( C )

15


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

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

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

马上注册会员

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