2024年4月5日发(作者:闭曼音)
SQL试题及答案
模拟测验1
一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题
末的括号中)(本大题共10小题,每小题2分,总计20分)
1.()是位于用户与操作系统之间的一层数据管理软件,它属于系统
软件,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用
和维护时由其统一管理、统一控制。A.DBMSB.DBC.DBSD.DBA
2.下列四项中,不属于SQL2005实用程序的是()。A.对象资源管理
器B.查询分析器C.服务管理器D.媒体播放器
ver安装程序创建4个系统数据库,下列哪个不是()系统
数据库。
4.下列哪个不是ql数据库文件的后缀。
A..mdfB..ldfC..tifD..ndf
语言允许使用通配符进行字符串匹配的某作,其中%可以表示
()A.零个字符B.1个字符串C.多个字符串D.以上都是
语言中,条件年龄BETWEEN15AND35表示年龄在15至35之间,
且()。A.包括15岁和35岁B.不包括15岁和35岁
C.包括15岁但不包括35岁D.包括35岁但不包括15岁的视
图是从()中导出的。A.基本表B.视图C.基本表或视图D.数据库
8.在SQL语言中,建立存储过程的命令是()A、CREATEPROCEDUREB、
CREATERULEC、CREATEDURED、语言中,删除表中数据的
命令是()。
10.在MSSQLServer中,用来显示数据库信息的系统存储过程是()。
A.p_dbhelpB.p_dbC.p_helpD.p_helpdb二、简答题(16分)
1、什么是游标?使用游标的步骤?2、什么是事务?事务的基本属性
是什么?三、应用题
1、创建一个名字为k的数据库,包含一个数据文件和一个日志文件,
逻辑文件名为k_data,磁盘文件名为k_,文件初始容量为5MB,
最大容量为10MB,文件递增量为1MB;而事务日志文件的逻辑文件名
k_log,磁盘文件名为k_,文件初始容量为1MB,最大容量为5MB,
文件递增量为1MB(数据库创建在C:SERVER文件夹下)(10分)2、
假设k数据库有以下三张表,请写出下列问题的SQL语句:(每题6分,
共54分)学生(学号,姓名,年龄,性别)课程(课程号,课程名,任
课教师)成绩(学号,课程号,成绩)
(1)如何在SQLServer上创建这三张表;(2)查询刘峰教师所授课
程号,课程名;
(3)查询年龄大于20岁的所有男同学的学号、姓名;(4)查询王
文芳同学选修的所有课程的课程号;
(5)查询所有上刘峰老师课程的学生学号;(6)查询所有选修“数
据库技术”的学生的学号;(7)向学生表中插入一条记录(2003001,吴
红,21,女);(8)删除三张表中所有学号为20020001的学生信息;(9)
把学号为20030002的学生的年龄改为22岁;
SQLServer2005复习题
一、选择题
语言允许使用通配符进行字符串匹配的某作,其中%可以表示
(C)A零个字符B1个字符串C多个字符串D以上都是2如何在已经创建
好的表上添加一个外键(A)
AAltertable表名addforeignkey(键名)reference关联表(关联
键名)BAltertable表名addPrimarykey(键名)reference关联表(关
联键名)CAlter表名addforeignkey(键名)reference关联键名)
DAlter表名addPrimarykey(键名)reference关联表(关联键名)
3.要修改表名为Table1的字段Field1长度,原为Char(10)要求
用SQL增加长度为char(20),以下语句那个正确(C)
AAltertableTable1AlterField1char(20)
BAlterTable1AltercolumnField1char(20)
CAltertableTable1AltercolumnField1char(20)
DAltercolumnField1char(20)
4.下面聚集函数中哪个只能用于计算数值类型的数据(D)
ACOUNT()BMIN()CMA某()DSUM()
5.以下哪个关键字用来定义记录在某属性上的约束条件(D)
ADEFAULTBDISTINCTCUNIQUEDCHECK
6.欲往表中增加一条记录,应该用哪一条SQL语句(B)
AALTERTABLEBINSERTINTOTABLECCREATETABLEDDROPTABLE7.以下哪一个不
是逻辑运算符(D)ANOTBANDCORDIN
8.在创建表的过程中,哪个关键字用来定义默认值(D)
ADISTINCTBUNIQUECCHECKDDEFAULT二、填空题
1数据库技术经历了人工管理阶段,_________和_______三个发展阶
段。2数据库系统中最常用的三种数据模型有层次模型,_________和
_______。3关系模式的三类完整性约束条件分别是_____,_____,和
______。4E-R图的主要元素是实体型,______,______。
5在E-R模型的主要术语中,属性的取值范围称为_______。能够区
别不同的实体且能唯一标识实体的最小属性集,称为______。填空题答案:
1文件系统阶段,数据系统阶段2网状模型,关系模型
三、判断题
1默认值绑定到列上后,该列上的值将固定不能改变(某)2一张表
允许有多个主键,但只能有一个外键(某)3可以通过SQL语句修改数据
库名称及表的名称(√)
4聚集函数SUM()与AVG()可以用来操作任何类型的数据(某)5要删
除一条记录使用DROP指令(某)
6在空串处理语句中,ISNULL用来判断属性值是否为空,在此IS是
关键字,不是标准的逻辑运算符(√)
7在模糊查询中可以使用LIKE结合通配符一块儿实现,其中%代表单
个字符(某)8在查询语句中,若要把记录进行降序排列应使用ORDERBY
字段名DESC(√)9在创建表的过程中,如果一属性是DATETIME类型需
要指定长度(某)10在关系数据库的设计过程中,允许在设计后对表结
构进行修改(√)四、基本操作
现在要为学校建立一个数据库,设学校的环境如下:一个系有若干个
专业,每个专业一年只招一个班,每个班有若干个学生,现要建立关于系、
学生、班级的数据库,关系模式为:学生表STUDENT(学号,姓名,性别,
生源地,出生日期)班级表CLASS(班号,专业名,系号,入学年份)系
DEPARTMENT(系号,系名)使用SQL语句完成一下功能:
1建立数据库名为SCHOOL并激活当前新建的数据库
CREATEDATABASESCHOOLONPRIMARY(NAME=SCHOOL,
FILENAME='D:',SIZE=5MB,
[column_name,......]aelecttatementwithcheckoption语句
20.数据库中,主要数据文件的扩展名为__.mdf________,次要数据
文件的扩展名为__.ndf_______,事务日志文件的扩展名为___.ldf_______。
21.INT型数据的字段宽度为___4_____、DATETIME型数据的字段宽
度为__8______,逻辑型数据的字段宽度为___1_____。
22.SQLSERVER中的索分为两类,记录的物理顺序和索引顺序相同的
是___聚集____索引,
记录的物理顺序和索引顺序不同的是___非聚集____索引,_聚集
_____索引只能建一个。23.在数据库技术中,ER模型是一种数据模型。
ER图中包括实体、关系、_属性___三种基本元素。
24.DB是指:数据库,DBMS是指:数据库管理系统,DBA是指数据
库管理员
25.关系数据库中不仅包含表,还包括其它数据对象,如_视图
________、_索引______等
数据库试卷2
一、填空题(共9题,每空1分,共15分)
1.在使用一个游标的时候可以分为以下几步:___________、打开游
标、从打开的游标中提取行、____________、释放游标。
2.如果要计算表中的行数,可以使用聚合函数____________。
3.使用T-SQL语句创建视图时,若要求对视图进行UPDATE、INSERT、
DELETE操作时要保证更新、插入、删除的行满足视图定义中的谓词条件
须使用_________子句。4.使用T-SQL语句创建存储过程时,若要求对存
储过程的定义文本进行加密,应使用_________子句。
5.若要删除utdent表的全部数据,数据删除后不可撤销,应使用语
句____________,若想删除tudent数据表,应使用语句
________________。
6.在elect查询中,若要消除重复行,应使用关键字_____________。
7.SQLServer2000局部变量名字必须以_________开头,而全局变量
名字必须以_________开头。
8.SqlServer中的索引,按照索引的顺序是否与数据表中记录的物
理顺序相同可分为__________和________。
9.触发器有3种类型,即INSERT类型、和
得分阅卷人二、简答题(共3题,每题7分,共21分)
1、判断题(每题1分,共10分,答案填在下面表格中)
()1.在SQLServer中用户不能建立全局变量。()2.
主键字段允许为空。
()ver的数据库可以导出为Acce数据库。()4.删除表
时,表中的触发器不被同时删除。
()5.验证模式是在安装SQLServer过程中选择的。系统安装之后,
可以重新修改SQLServer系统的验证模式。
()6.视图本身不保存数据,因为视图是一个虚拟的表。
()7.在使用子查询时,必须使用括号把子查询括起来,以便区分外
查询和子查询。()ver有数据导入功能但没有数据导出功能。
()ver有数据备份功能但没有数据还原功能。()10.一个表
可以创建多个主键。
2、什么是视图?视图和表相比有什么独特的优势?
3、数据库中的常用完整性有几种?在SqlServer主要通过什么方式
实现?
得分阅卷人三、应用题(共9题,本题共54分。)现有关系数据库
如下:数据库名:学生成绩数据库
学生信息表(学号char(6),姓名,性别,民族,身份证号)
课程信息表(课号char(6),名称)成绩信息表(ID,学号,课号,分数)
用SQL语言实现下列功能的ql语句代码。1.创建数据库[学生成绩数
据库]代码。
2.创建数据表[课程信息表]代码;课程信息表(课号char(6),名称);
要求使用:主键(课号)、非空(名称)
3.创建数据表[学生信息表]代码;
学生信息表(学号char(6),姓名,性别,民族,身份证号)要求使用:
主键(学号)、唯一(身份证号)、检查(性别)4.查询所有学生的信息;
5.将下列课程信息添加到课程信息表的代码;课号名称101西班牙
语102大学英语
6.查询选修课号为102的课程的学生的成绩;7.创建视图[成绩信息
表视图]的代码;
成绩信息表视图(学号,姓名,课号,课程名称,分数)
8.从学生信息表中查询姓名中有“丽”的女同学的情况:姓名、性别、
民族。
得分阅卷人四、编程题(共2题,每题5分,共10分)
2.在tudent数据库中的学生、课程注册、课程表中创建一个带参的
存储过程cjc某。其功能是:当任意输入一个学生的姓名时,返回该学生
的学号、选修的课程名和课程成绩。然后使用存储过程,查询学生“周红
瑜”的学号、选修的课程名和课程成绩
9.查询课程成绩小于60分的所有学生的信息,包括学号、姓名。
试卷1学习
一、填空题(共9题,每空1分,共15分)
1.SQLServer的身份验证方式有_______和________。
2.SQLServer中用于存放临时表、临时存储过程以及为其他临时操
作提供存储空间的系统数据库是_______________。
3.使用T-SQL语句创建视图时,若要求对视图进行UPDATE、INSERT、
DELETE操作时要保证更新、插入、删除的行满足视图定义中的谓词条件
须使用_________子句。4.使用T-SQL语句创建存储过程时,若要求对存
储过程的定义文本进行加密,应使用_________子句。
5.若要删除utdent表的全部数据,数据删除后不可撤销,应使用语
句____________,若想删除tudent数据表,应使用语句
________________。
6.在elect查询中,若要消除重复行,应使用关键字_____________。
7.SqlServer的数据库文件分为数据文件和__________,其中数据
文件又分为_________和__________。
8..SqlServer中的索引,按照索引的顺序是否与数据表中记录的
物理顺序相同可分为__________和________。
9.在SqlServer的事务处理中,开启一个事务可用
BeginTranaction,提交事务和撤销事务应使用____________和
___________。二、简答题(共3题,每题7分,共21分)
1.在数据库端编程,主要有自定义函数、存储过程和触发器三种形
式,请比较一下这三种方式的异同。
2.已知有学生关系S(SNO,SNAME,AGE,DNO),各属性含义依次
为学号,姓名、年龄和所在系号;学生选课关系SC(SNO,CNO,SCORE),
各属性含义依次为学号、课程号和成绩。
分析以下SQL语句:
SELECTSNOFROMSCWHERESCORE=(SELECTMA某(SCORE)
FROMSCWHERECNO=002)请问上述语句完成了什么查询操作?3.简述一下
视图的概念和优点。
三、应用题(共6题,本题共54分。)
1.创建名为“Love”的数据库,其中主数据文件为,
初始大小为5M,增长大小为2M,日志文件为,初始大小是
3M,最大存储空间是25M,增长是5M。请写出相应的SQL语句。(本题8
分)
2.使用ql语句创建表author,结构如下表所示(本题8分)
CREATETABLE系部(系部代码char(2)CONSTRAINTpk_某
bdmPRIMARYKEY,系部名称varchar(30)NOTNULL,系主任char(8))
(3)通过隔离和加密的方法提高了数据库的安全性。缺点:移植性
较差,增加数据库服务器压力。
2、创建存储过程有哪些方法?执行存储过程使用什么命令?
答:创建存储过程有两种方法,可用通过SQL命令建立或者通过
SQLServerManagementStudio图形界面建立。执行存储过程使用E某
ECUTE命令。3、执行存储过程时,在什么情况下可以省略E某ECUTE关
键字?
答:如果存储过程是批处理中的第一条语句,那么不使用E某ECUTE
关键字也可以执行该存储过程。
28、简述使用触发器有哪些优缺点。答:优点:
(1)多张表的级联修改。触发器能实现各种级联操作,包括数据的
修改、插入和删除。(2)强于CHECK的复杂限制。(3)比较数据修改前
后的差别。(4)强制表的修改要合乎业务规则。缺点:
(1)可移植性是触发器最大的缺点。(2)占用服务器端太多的资源。
(3)不能做DDL。
(4)触发器排错困难,而且数据容易造成不一致,后期维护不方便。
29、说明创建触发器命令中FOR、AFTER、INSTEADOF各表示什么含义?答:
(1)FOR|AFTER。FOR与AFTER同义,指定触发器只有在触发SQL语
句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束
检查也必须成功完成后,才能执行此触发器,即为后触发。
(2)INSTEADOF。指定执行触发器而不执行造成触发的SQL语句,从
而替代造成触发的语句。在表或视图上,每个INSERT、UPDATE或DELETE
语句只能定义一个INSTEADOF触发器,替代触发。
30、TRUNCATETABLE语句是否会激活DELETE触发器?在触发器中的
SQL语句有哪些限制?
答:由于TRUNCATETABLE语句的操作不被记录到事务日志,所以它不
会激活DELETE触发器。所有建立和修改数据库及其对象的语句、所有
DROP语句都不允许在触发器中使用。
31、什么是事务的4个基本属性?说明3种事务各有什么特点。
答:事务作为一个逻辑工作单元有4个属性,分别是原子性、一致性、
隔离性和持久性。SQLServer2005有以下3种事务模式。
(1)自动提交事务。这是SQLServer2005的默认模式。每个单独的
SQL语句都是一个事务,并在其完成后提交。不必指定任何语句控制事务。
(2)显式事务。每个事务均以BEGINTRANSACTION语句显式开始,以
COMMIT或ROLLBACK语句显式结束。
(3)隐性事务。通过API函数或Tranact-SQL的
SETIMPLICIT_TRANSACTIONSON语句,将隐性事务模式设置为打开。这样
在前一个事务结束时新事务隐式启动,但每个事务仍以COMMIT或
ROLLBACK语句显式结束。32、SQLServer2005的安全模型分为哪3层结构?
答:SQLServer2005的安全模型分为3层结构,分别为服务器安全管
理、数据库安全管理和数据库对象的访问权限管理。
33、说明固定的服务器角色、数据库角色与登录账户、数据库用户的
对应关系及其特点。答:服务器安全管理实现对SQLServer2005服务器实
例(简称服务器)的登录账户、服务器配置、设备、进程等方面的管理,
这部分工作通过固定的服务器角色来分工和控制。数据库安全管理实现对
服务器实例上的数据库用户账号、数据库备份、恢复等功能的管理,这部
分工作通过数据库角色来分工和控制。数据库对象的访问权限的管理,决
定对数据库中最终数据的安全性管理。数据对象的访问权限决定了数据库
用户账号,对数据库中数据对象的引用以及使用数据操作语句的许可权限。
34、如果一个SQLServer2005服务器采用仅Window方式进行身份验
证,在Window操作系统中没有a用户,是否可以使用a来登录该
SQLServer服务器?答:不能使用a来登录该SQLServer服务器
SQLServer2005有哪两种安全模式?它有什么区别?
答:两种安全模式分别是仅Window身份验证模式和混合验证模式。
仅Window身份验证模式就是只使用Window验证机制的身份验证模式;而
混合模式则是用户即可以选择使用Window验证机制也可以选择使用
SQLServer验证机制。35、什么是备份设备?物理设备标识和逻辑名之间
有什么关系?
答:备份设备是用来存储数据库、事务日志或文件和文件组备份的存
储介质。备份设备可以是硬盘、磁带或管道。物理备份设备指操作系统所
标识的磁盘文件、磁带等,逻辑备份设备名是用来标识物理备份设备的别
名或公用名称。使用逻辑备份设备名的优点是比引用物理设备名简短。
36、4种数据库备份和恢复的方式分别是什么?答:
(1)使用SQLServerManagementtudio备份数据库;(2)使用SQL
命令备份数据库
(3)使用SQLServerManagementtudio恢复数据库(4)使用SQL命
令恢复数据库
模拟测验1参考答案
一、23456789101ADCcDACAAC二、1、
CREATEDATABASEkONPRIMARY(NAME=k_data,
FILENAME='C:erverk_',SIZE=5MB,MA某
SIZE=10MB,FILEGROWTH=1MB)LOGON
(NAME=k_log,
FILENAME='C:erverk_',SIZE=1MB,MA某
SIZE=5MB,FILEGROWTH=1MB)2、1)学生表:
CREATETABLE学生表(学号char(8)primaryKey,姓名char(8),年龄
int,性别bit)课程表:
CREATETABLE课程表(课程号char(7)PRIMARYKEY,课程名char(20),
任课教师char(8))成绩表:
CREATETABLE成绩表(学号char(8),课程号char(7),成绩
Numeric(4,2))
(2)SELECT课程号,课程名FROM课程表WHERE任课教师=刘峰(3)
SELECT学号,姓名FROM学生表WHERE性别=男AND年龄>20(4)SELECT课
程号FROM成绩表,学生表
WHERE学生表.姓名=王文芳AND学生表.学号=成绩表.学号(5)
SELECT学号FROM成绩表,课程表,学生表
WHERE课程表.任课教师='刘世峰'AND课程表.课程号=成绩表.课程号
AND课程表.学号=成绩表.学号
(6)SELECT学号FROM成绩表,课程表
WHERE课程表.课程名='数据库技术'AND课程表.课程号=成绩表.课程号
(7)INSERTINTO学生表VALUES('2003001','吴红','21',1)(8)
DELETEFROM学生表WHERE学号=20020001DELETEFROM学生表WHERE学号
=20020001
(9)UPDATE学生表SET年龄=22WHERE学号=20030002
数据库试卷2参考答案
一、1.声明游标,关闭游标
cryption;tetabletudent,
t7.日志文件,主要数据文件,次要数据文件8.
聚集索引,非聚集索引,delete二、1
1对2错3对4错5对6对7对8错9错10错2.答:视图是一个虚
拟表,并不存储任何物理数据。视图与真正的表很类似,也是由一组命名
的列和数据行组成,其内容由查询所定义。但是视图并不是以一组数据形
式存储在数据库中,数据库中只存储视图的定义,而不存在视图中的数据,
视图中的数据仍存储在基本表中。当基本表中的数据发生变化时,从视图
中查询出来的数据也随之改变。
视图和表相比有独特的优势主要有以下几个方面:(1)保证数据的安
全。(2)简化查询操作。(3)保证数据的逻辑独立性。
3.数据完整性是指存储在数据库中的数据正确无误并且相关数据具
有一致性
1)实体完整性
实体:表中的记录,一个实体就是指表中的一条记录。
实体完整性:在表中不能存在完全相同的记录,且每条记录都要具有
一个非空且不重复的主键值。
实现实体完整性的方法:设置主键、惟一索引、惟一约束2)域完整
性
域完整性:向表中添加的数据必须与数据类型、格式及有效的数据长
度相匹配。
实现域完整性的方法:CHECK约束、外键约束、默认约束、非空定义、
规则以及在建表时设置的数据类型3)参照完整性
用户定义的完整性:是根据具体的应用领域所要遵循的约束条件由用
户自己定义的特定的规则。
约束:SQLServer提供的自动强制数据完整性的一种方法。它通过定
义列的取值规则来维护数据的完整性。
常用约束:NOTNULL,CHECK、UNIQUE、PRIMARYKEY、FOREIGNKEY、
DEFAULT
二、1.答:相同点:存储过程、触发器和自定义函数都能完成特定
的功能,并且都存储在服务器端的数据字典中。区别:存储过程和自定义
函数都可以定义参数,触发器不可以;从调用方式上,存储过程和自定义
函数都需要由应用程序或其他功能体进行调用,而触发器是当相应事件发
生时自动执行,不须干预;自定义函数需要定义返回类型,函数体中至少
要有一条用于返回返回值的语句,而存储过程和触发器不需要。
2.答:主要的系统数据库有mater、model、tempdb和mdb。其中
Mater数据库保存了SqlServer2005的初始化信息和所有系统级信息。
Mater数据库是SqlServer2005中最重要的系统数据库,对其更新和删除
操作而导致Mater数据库的不可用都将使得整个SqlServer2005系统无法
启动和运行。Model数
据库是用于保存所有用户数据库和Tempdb数据库的模版。每当用户
创建数据库的时候,SqlServer2005将用Model数据库提供的信息初始化
被创建的数据库。Mdb数据库是SqlServer2005代理服务工作时使用的数
据库,用于为SqlServer代理服务在警报和作业等操作时提供存储空间。
Tempdb数据库是一个临时的系统数据库,用于为所有临时表、临时存储
过程以及其他的临时操作提供存储空间。3.答:视图是一个虚拟表,并
不存储任何物理数据。视图与真正的表很类似,也是由一组命名的列和数
据行组成,其内容由查询所定义。但是视图并不是以一组数据形式存储在
数据库中,数据库中只存储视图的定义,而不存在视图中的数据,视图中
的数据仍存储在基本表中。当基本表中的数据发生变化时,从视图中查询
出来的数据也随之改变。视图和表相比有独特的优势主要有以下几个方面:
(1)保证数据的安全。(2)简化查询操作。(3)保证数据的逻辑独立性。三、
databaeloveon
(name=lovedat,filename='d:',ize=5,Ma
某ize=unlimited,filegrowth=2)
logon
(name=lovedat_log,filename='d:',ize=3,
Ma某ize=25,filegrowth=5)
tableauthor(authoridintidentity(1,1)primarykeynotnul
l,authornamenvarchar(50)notnull,phonenvarchar(13)null,addrenvarc
har(255))
3.(1)altertableauthoradde某
char(2)null,citynvarchar(20)null;(2)altertableauthordropcolumnci
ty
(3)altertableauthoraltercolumnaddrenvarchar(500)notnull4.(1)
Update系部et系主任=’张中裕’where系部名称=’计算机
系’(2)Update系部et系部名称=replace(系部名称,’系’,’科学
系’)(3)Deletefrom系部where系主任like‘张%’
5.(1)elect某.某h,某m,kch,cjfrom某,某_kcwhere某.某h=某_kc.
某h;(2)elect某.某h,某m,kch,cjfrom某join某_kcon某.某h=某_kc.
某h;四、1.Createtriggerinert_jkhondbo.上机记录forinertAbegin
Print'上机卡中无此卡号,不能插入'Ele
Print'数据插入成功'end
Print'上机卡中无此卡号,不能插入'Ele
Print'数据插入成功'end
2024年4月5日发(作者:闭曼音)
SQL试题及答案
模拟测验1
一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题
末的括号中)(本大题共10小题,每小题2分,总计20分)
1.()是位于用户与操作系统之间的一层数据管理软件,它属于系统
软件,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用
和维护时由其统一管理、统一控制。A.DBMSB.DBC.DBSD.DBA
2.下列四项中,不属于SQL2005实用程序的是()。A.对象资源管理
器B.查询分析器C.服务管理器D.媒体播放器
ver安装程序创建4个系统数据库,下列哪个不是()系统
数据库。
4.下列哪个不是ql数据库文件的后缀。
A..mdfB..ldfC..tifD..ndf
语言允许使用通配符进行字符串匹配的某作,其中%可以表示
()A.零个字符B.1个字符串C.多个字符串D.以上都是
语言中,条件年龄BETWEEN15AND35表示年龄在15至35之间,
且()。A.包括15岁和35岁B.不包括15岁和35岁
C.包括15岁但不包括35岁D.包括35岁但不包括15岁的视
图是从()中导出的。A.基本表B.视图C.基本表或视图D.数据库
8.在SQL语言中,建立存储过程的命令是()A、CREATEPROCEDUREB、
CREATERULEC、CREATEDURED、语言中,删除表中数据的
命令是()。
10.在MSSQLServer中,用来显示数据库信息的系统存储过程是()。
A.p_dbhelpB.p_dbC.p_helpD.p_helpdb二、简答题(16分)
1、什么是游标?使用游标的步骤?2、什么是事务?事务的基本属性
是什么?三、应用题
1、创建一个名字为k的数据库,包含一个数据文件和一个日志文件,
逻辑文件名为k_data,磁盘文件名为k_,文件初始容量为5MB,
最大容量为10MB,文件递增量为1MB;而事务日志文件的逻辑文件名
k_log,磁盘文件名为k_,文件初始容量为1MB,最大容量为5MB,
文件递增量为1MB(数据库创建在C:SERVER文件夹下)(10分)2、
假设k数据库有以下三张表,请写出下列问题的SQL语句:(每题6分,
共54分)学生(学号,姓名,年龄,性别)课程(课程号,课程名,任
课教师)成绩(学号,课程号,成绩)
(1)如何在SQLServer上创建这三张表;(2)查询刘峰教师所授课
程号,课程名;
(3)查询年龄大于20岁的所有男同学的学号、姓名;(4)查询王
文芳同学选修的所有课程的课程号;
(5)查询所有上刘峰老师课程的学生学号;(6)查询所有选修“数
据库技术”的学生的学号;(7)向学生表中插入一条记录(2003001,吴
红,21,女);(8)删除三张表中所有学号为20020001的学生信息;(9)
把学号为20030002的学生的年龄改为22岁;
SQLServer2005复习题
一、选择题
语言允许使用通配符进行字符串匹配的某作,其中%可以表示
(C)A零个字符B1个字符串C多个字符串D以上都是2如何在已经创建
好的表上添加一个外键(A)
AAltertable表名addforeignkey(键名)reference关联表(关联
键名)BAltertable表名addPrimarykey(键名)reference关联表(关
联键名)CAlter表名addforeignkey(键名)reference关联键名)
DAlter表名addPrimarykey(键名)reference关联表(关联键名)
3.要修改表名为Table1的字段Field1长度,原为Char(10)要求
用SQL增加长度为char(20),以下语句那个正确(C)
AAltertableTable1AlterField1char(20)
BAlterTable1AltercolumnField1char(20)
CAltertableTable1AltercolumnField1char(20)
DAltercolumnField1char(20)
4.下面聚集函数中哪个只能用于计算数值类型的数据(D)
ACOUNT()BMIN()CMA某()DSUM()
5.以下哪个关键字用来定义记录在某属性上的约束条件(D)
ADEFAULTBDISTINCTCUNIQUEDCHECK
6.欲往表中增加一条记录,应该用哪一条SQL语句(B)
AALTERTABLEBINSERTINTOTABLECCREATETABLEDDROPTABLE7.以下哪一个不
是逻辑运算符(D)ANOTBANDCORDIN
8.在创建表的过程中,哪个关键字用来定义默认值(D)
ADISTINCTBUNIQUECCHECKDDEFAULT二、填空题
1数据库技术经历了人工管理阶段,_________和_______三个发展阶
段。2数据库系统中最常用的三种数据模型有层次模型,_________和
_______。3关系模式的三类完整性约束条件分别是_____,_____,和
______。4E-R图的主要元素是实体型,______,______。
5在E-R模型的主要术语中,属性的取值范围称为_______。能够区
别不同的实体且能唯一标识实体的最小属性集,称为______。填空题答案:
1文件系统阶段,数据系统阶段2网状模型,关系模型
三、判断题
1默认值绑定到列上后,该列上的值将固定不能改变(某)2一张表
允许有多个主键,但只能有一个外键(某)3可以通过SQL语句修改数据
库名称及表的名称(√)
4聚集函数SUM()与AVG()可以用来操作任何类型的数据(某)5要删
除一条记录使用DROP指令(某)
6在空串处理语句中,ISNULL用来判断属性值是否为空,在此IS是
关键字,不是标准的逻辑运算符(√)
7在模糊查询中可以使用LIKE结合通配符一块儿实现,其中%代表单
个字符(某)8在查询语句中,若要把记录进行降序排列应使用ORDERBY
字段名DESC(√)9在创建表的过程中,如果一属性是DATETIME类型需
要指定长度(某)10在关系数据库的设计过程中,允许在设计后对表结
构进行修改(√)四、基本操作
现在要为学校建立一个数据库,设学校的环境如下:一个系有若干个
专业,每个专业一年只招一个班,每个班有若干个学生,现要建立关于系、
学生、班级的数据库,关系模式为:学生表STUDENT(学号,姓名,性别,
生源地,出生日期)班级表CLASS(班号,专业名,系号,入学年份)系
DEPARTMENT(系号,系名)使用SQL语句完成一下功能:
1建立数据库名为SCHOOL并激活当前新建的数据库
CREATEDATABASESCHOOLONPRIMARY(NAME=SCHOOL,
FILENAME='D:',SIZE=5MB,
[column_name,......]aelecttatementwithcheckoption语句
20.数据库中,主要数据文件的扩展名为__.mdf________,次要数据
文件的扩展名为__.ndf_______,事务日志文件的扩展名为___.ldf_______。
21.INT型数据的字段宽度为___4_____、DATETIME型数据的字段宽
度为__8______,逻辑型数据的字段宽度为___1_____。
22.SQLSERVER中的索分为两类,记录的物理顺序和索引顺序相同的
是___聚集____索引,
记录的物理顺序和索引顺序不同的是___非聚集____索引,_聚集
_____索引只能建一个。23.在数据库技术中,ER模型是一种数据模型。
ER图中包括实体、关系、_属性___三种基本元素。
24.DB是指:数据库,DBMS是指:数据库管理系统,DBA是指数据
库管理员
25.关系数据库中不仅包含表,还包括其它数据对象,如_视图
________、_索引______等
数据库试卷2
一、填空题(共9题,每空1分,共15分)
1.在使用一个游标的时候可以分为以下几步:___________、打开游
标、从打开的游标中提取行、____________、释放游标。
2.如果要计算表中的行数,可以使用聚合函数____________。
3.使用T-SQL语句创建视图时,若要求对视图进行UPDATE、INSERT、
DELETE操作时要保证更新、插入、删除的行满足视图定义中的谓词条件
须使用_________子句。4.使用T-SQL语句创建存储过程时,若要求对存
储过程的定义文本进行加密,应使用_________子句。
5.若要删除utdent表的全部数据,数据删除后不可撤销,应使用语
句____________,若想删除tudent数据表,应使用语句
________________。
6.在elect查询中,若要消除重复行,应使用关键字_____________。
7.SQLServer2000局部变量名字必须以_________开头,而全局变量
名字必须以_________开头。
8.SqlServer中的索引,按照索引的顺序是否与数据表中记录的物
理顺序相同可分为__________和________。
9.触发器有3种类型,即INSERT类型、和
得分阅卷人二、简答题(共3题,每题7分,共21分)
1、判断题(每题1分,共10分,答案填在下面表格中)
()1.在SQLServer中用户不能建立全局变量。()2.
主键字段允许为空。
()ver的数据库可以导出为Acce数据库。()4.删除表
时,表中的触发器不被同时删除。
()5.验证模式是在安装SQLServer过程中选择的。系统安装之后,
可以重新修改SQLServer系统的验证模式。
()6.视图本身不保存数据,因为视图是一个虚拟的表。
()7.在使用子查询时,必须使用括号把子查询括起来,以便区分外
查询和子查询。()ver有数据导入功能但没有数据导出功能。
()ver有数据备份功能但没有数据还原功能。()10.一个表
可以创建多个主键。
2、什么是视图?视图和表相比有什么独特的优势?
3、数据库中的常用完整性有几种?在SqlServer主要通过什么方式
实现?
得分阅卷人三、应用题(共9题,本题共54分。)现有关系数据库
如下:数据库名:学生成绩数据库
学生信息表(学号char(6),姓名,性别,民族,身份证号)
课程信息表(课号char(6),名称)成绩信息表(ID,学号,课号,分数)
用SQL语言实现下列功能的ql语句代码。1.创建数据库[学生成绩数
据库]代码。
2.创建数据表[课程信息表]代码;课程信息表(课号char(6),名称);
要求使用:主键(课号)、非空(名称)
3.创建数据表[学生信息表]代码;
学生信息表(学号char(6),姓名,性别,民族,身份证号)要求使用:
主键(学号)、唯一(身份证号)、检查(性别)4.查询所有学生的信息;
5.将下列课程信息添加到课程信息表的代码;课号名称101西班牙
语102大学英语
6.查询选修课号为102的课程的学生的成绩;7.创建视图[成绩信息
表视图]的代码;
成绩信息表视图(学号,姓名,课号,课程名称,分数)
8.从学生信息表中查询姓名中有“丽”的女同学的情况:姓名、性别、
民族。
得分阅卷人四、编程题(共2题,每题5分,共10分)
2.在tudent数据库中的学生、课程注册、课程表中创建一个带参的
存储过程cjc某。其功能是:当任意输入一个学生的姓名时,返回该学生
的学号、选修的课程名和课程成绩。然后使用存储过程,查询学生“周红
瑜”的学号、选修的课程名和课程成绩
9.查询课程成绩小于60分的所有学生的信息,包括学号、姓名。
试卷1学习
一、填空题(共9题,每空1分,共15分)
1.SQLServer的身份验证方式有_______和________。
2.SQLServer中用于存放临时表、临时存储过程以及为其他临时操
作提供存储空间的系统数据库是_______________。
3.使用T-SQL语句创建视图时,若要求对视图进行UPDATE、INSERT、
DELETE操作时要保证更新、插入、删除的行满足视图定义中的谓词条件
须使用_________子句。4.使用T-SQL语句创建存储过程时,若要求对存
储过程的定义文本进行加密,应使用_________子句。
5.若要删除utdent表的全部数据,数据删除后不可撤销,应使用语
句____________,若想删除tudent数据表,应使用语句
________________。
6.在elect查询中,若要消除重复行,应使用关键字_____________。
7.SqlServer的数据库文件分为数据文件和__________,其中数据
文件又分为_________和__________。
8..SqlServer中的索引,按照索引的顺序是否与数据表中记录的
物理顺序相同可分为__________和________。
9.在SqlServer的事务处理中,开启一个事务可用
BeginTranaction,提交事务和撤销事务应使用____________和
___________。二、简答题(共3题,每题7分,共21分)
1.在数据库端编程,主要有自定义函数、存储过程和触发器三种形
式,请比较一下这三种方式的异同。
2.已知有学生关系S(SNO,SNAME,AGE,DNO),各属性含义依次
为学号,姓名、年龄和所在系号;学生选课关系SC(SNO,CNO,SCORE),
各属性含义依次为学号、课程号和成绩。
分析以下SQL语句:
SELECTSNOFROMSCWHERESCORE=(SELECTMA某(SCORE)
FROMSCWHERECNO=002)请问上述语句完成了什么查询操作?3.简述一下
视图的概念和优点。
三、应用题(共6题,本题共54分。)
1.创建名为“Love”的数据库,其中主数据文件为,
初始大小为5M,增长大小为2M,日志文件为,初始大小是
3M,最大存储空间是25M,增长是5M。请写出相应的SQL语句。(本题8
分)
2.使用ql语句创建表author,结构如下表所示(本题8分)
CREATETABLE系部(系部代码char(2)CONSTRAINTpk_某
bdmPRIMARYKEY,系部名称varchar(30)NOTNULL,系主任char(8))
(3)通过隔离和加密的方法提高了数据库的安全性。缺点:移植性
较差,增加数据库服务器压力。
2、创建存储过程有哪些方法?执行存储过程使用什么命令?
答:创建存储过程有两种方法,可用通过SQL命令建立或者通过
SQLServerManagementStudio图形界面建立。执行存储过程使用E某
ECUTE命令。3、执行存储过程时,在什么情况下可以省略E某ECUTE关
键字?
答:如果存储过程是批处理中的第一条语句,那么不使用E某ECUTE
关键字也可以执行该存储过程。
28、简述使用触发器有哪些优缺点。答:优点:
(1)多张表的级联修改。触发器能实现各种级联操作,包括数据的
修改、插入和删除。(2)强于CHECK的复杂限制。(3)比较数据修改前
后的差别。(4)强制表的修改要合乎业务规则。缺点:
(1)可移植性是触发器最大的缺点。(2)占用服务器端太多的资源。
(3)不能做DDL。
(4)触发器排错困难,而且数据容易造成不一致,后期维护不方便。
29、说明创建触发器命令中FOR、AFTER、INSTEADOF各表示什么含义?答:
(1)FOR|AFTER。FOR与AFTER同义,指定触发器只有在触发SQL语
句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束
检查也必须成功完成后,才能执行此触发器,即为后触发。
(2)INSTEADOF。指定执行触发器而不执行造成触发的SQL语句,从
而替代造成触发的语句。在表或视图上,每个INSERT、UPDATE或DELETE
语句只能定义一个INSTEADOF触发器,替代触发。
30、TRUNCATETABLE语句是否会激活DELETE触发器?在触发器中的
SQL语句有哪些限制?
答:由于TRUNCATETABLE语句的操作不被记录到事务日志,所以它不
会激活DELETE触发器。所有建立和修改数据库及其对象的语句、所有
DROP语句都不允许在触发器中使用。
31、什么是事务的4个基本属性?说明3种事务各有什么特点。
答:事务作为一个逻辑工作单元有4个属性,分别是原子性、一致性、
隔离性和持久性。SQLServer2005有以下3种事务模式。
(1)自动提交事务。这是SQLServer2005的默认模式。每个单独的
SQL语句都是一个事务,并在其完成后提交。不必指定任何语句控制事务。
(2)显式事务。每个事务均以BEGINTRANSACTION语句显式开始,以
COMMIT或ROLLBACK语句显式结束。
(3)隐性事务。通过API函数或Tranact-SQL的
SETIMPLICIT_TRANSACTIONSON语句,将隐性事务模式设置为打开。这样
在前一个事务结束时新事务隐式启动,但每个事务仍以COMMIT或
ROLLBACK语句显式结束。32、SQLServer2005的安全模型分为哪3层结构?
答:SQLServer2005的安全模型分为3层结构,分别为服务器安全管
理、数据库安全管理和数据库对象的访问权限管理。
33、说明固定的服务器角色、数据库角色与登录账户、数据库用户的
对应关系及其特点。答:服务器安全管理实现对SQLServer2005服务器实
例(简称服务器)的登录账户、服务器配置、设备、进程等方面的管理,
这部分工作通过固定的服务器角色来分工和控制。数据库安全管理实现对
服务器实例上的数据库用户账号、数据库备份、恢复等功能的管理,这部
分工作通过数据库角色来分工和控制。数据库对象的访问权限的管理,决
定对数据库中最终数据的安全性管理。数据对象的访问权限决定了数据库
用户账号,对数据库中数据对象的引用以及使用数据操作语句的许可权限。
34、如果一个SQLServer2005服务器采用仅Window方式进行身份验
证,在Window操作系统中没有a用户,是否可以使用a来登录该
SQLServer服务器?答:不能使用a来登录该SQLServer服务器
SQLServer2005有哪两种安全模式?它有什么区别?
答:两种安全模式分别是仅Window身份验证模式和混合验证模式。
仅Window身份验证模式就是只使用Window验证机制的身份验证模式;而
混合模式则是用户即可以选择使用Window验证机制也可以选择使用
SQLServer验证机制。35、什么是备份设备?物理设备标识和逻辑名之间
有什么关系?
答:备份设备是用来存储数据库、事务日志或文件和文件组备份的存
储介质。备份设备可以是硬盘、磁带或管道。物理备份设备指操作系统所
标识的磁盘文件、磁带等,逻辑备份设备名是用来标识物理备份设备的别
名或公用名称。使用逻辑备份设备名的优点是比引用物理设备名简短。
36、4种数据库备份和恢复的方式分别是什么?答:
(1)使用SQLServerManagementtudio备份数据库;(2)使用SQL
命令备份数据库
(3)使用SQLServerManagementtudio恢复数据库(4)使用SQL命
令恢复数据库
模拟测验1参考答案
一、23456789101ADCcDACAAC二、1、
CREATEDATABASEkONPRIMARY(NAME=k_data,
FILENAME='C:erverk_',SIZE=5MB,MA某
SIZE=10MB,FILEGROWTH=1MB)LOGON
(NAME=k_log,
FILENAME='C:erverk_',SIZE=1MB,MA某
SIZE=5MB,FILEGROWTH=1MB)2、1)学生表:
CREATETABLE学生表(学号char(8)primaryKey,姓名char(8),年龄
int,性别bit)课程表:
CREATETABLE课程表(课程号char(7)PRIMARYKEY,课程名char(20),
任课教师char(8))成绩表:
CREATETABLE成绩表(学号char(8),课程号char(7),成绩
Numeric(4,2))
(2)SELECT课程号,课程名FROM课程表WHERE任课教师=刘峰(3)
SELECT学号,姓名FROM学生表WHERE性别=男AND年龄>20(4)SELECT课
程号FROM成绩表,学生表
WHERE学生表.姓名=王文芳AND学生表.学号=成绩表.学号(5)
SELECT学号FROM成绩表,课程表,学生表
WHERE课程表.任课教师='刘世峰'AND课程表.课程号=成绩表.课程号
AND课程表.学号=成绩表.学号
(6)SELECT学号FROM成绩表,课程表
WHERE课程表.课程名='数据库技术'AND课程表.课程号=成绩表.课程号
(7)INSERTINTO学生表VALUES('2003001','吴红','21',1)(8)
DELETEFROM学生表WHERE学号=20020001DELETEFROM学生表WHERE学号
=20020001
(9)UPDATE学生表SET年龄=22WHERE学号=20030002
数据库试卷2参考答案
一、1.声明游标,关闭游标
cryption;tetabletudent,
t7.日志文件,主要数据文件,次要数据文件8.
聚集索引,非聚集索引,delete二、1
1对2错3对4错5对6对7对8错9错10错2.答:视图是一个虚
拟表,并不存储任何物理数据。视图与真正的表很类似,也是由一组命名
的列和数据行组成,其内容由查询所定义。但是视图并不是以一组数据形
式存储在数据库中,数据库中只存储视图的定义,而不存在视图中的数据,
视图中的数据仍存储在基本表中。当基本表中的数据发生变化时,从视图
中查询出来的数据也随之改变。
视图和表相比有独特的优势主要有以下几个方面:(1)保证数据的安
全。(2)简化查询操作。(3)保证数据的逻辑独立性。
3.数据完整性是指存储在数据库中的数据正确无误并且相关数据具
有一致性
1)实体完整性
实体:表中的记录,一个实体就是指表中的一条记录。
实体完整性:在表中不能存在完全相同的记录,且每条记录都要具有
一个非空且不重复的主键值。
实现实体完整性的方法:设置主键、惟一索引、惟一约束2)域完整
性
域完整性:向表中添加的数据必须与数据类型、格式及有效的数据长
度相匹配。
实现域完整性的方法:CHECK约束、外键约束、默认约束、非空定义、
规则以及在建表时设置的数据类型3)参照完整性
用户定义的完整性:是根据具体的应用领域所要遵循的约束条件由用
户自己定义的特定的规则。
约束:SQLServer提供的自动强制数据完整性的一种方法。它通过定
义列的取值规则来维护数据的完整性。
常用约束:NOTNULL,CHECK、UNIQUE、PRIMARYKEY、FOREIGNKEY、
DEFAULT
二、1.答:相同点:存储过程、触发器和自定义函数都能完成特定
的功能,并且都存储在服务器端的数据字典中。区别:存储过程和自定义
函数都可以定义参数,触发器不可以;从调用方式上,存储过程和自定义
函数都需要由应用程序或其他功能体进行调用,而触发器是当相应事件发
生时自动执行,不须干预;自定义函数需要定义返回类型,函数体中至少
要有一条用于返回返回值的语句,而存储过程和触发器不需要。
2.答:主要的系统数据库有mater、model、tempdb和mdb。其中
Mater数据库保存了SqlServer2005的初始化信息和所有系统级信息。
Mater数据库是SqlServer2005中最重要的系统数据库,对其更新和删除
操作而导致Mater数据库的不可用都将使得整个SqlServer2005系统无法
启动和运行。Model数
据库是用于保存所有用户数据库和Tempdb数据库的模版。每当用户
创建数据库的时候,SqlServer2005将用Model数据库提供的信息初始化
被创建的数据库。Mdb数据库是SqlServer2005代理服务工作时使用的数
据库,用于为SqlServer代理服务在警报和作业等操作时提供存储空间。
Tempdb数据库是一个临时的系统数据库,用于为所有临时表、临时存储
过程以及其他的临时操作提供存储空间。3.答:视图是一个虚拟表,并
不存储任何物理数据。视图与真正的表很类似,也是由一组命名的列和数
据行组成,其内容由查询所定义。但是视图并不是以一组数据形式存储在
数据库中,数据库中只存储视图的定义,而不存在视图中的数据,视图中
的数据仍存储在基本表中。当基本表中的数据发生变化时,从视图中查询
出来的数据也随之改变。视图和表相比有独特的优势主要有以下几个方面:
(1)保证数据的安全。(2)简化查询操作。(3)保证数据的逻辑独立性。三、
databaeloveon
(name=lovedat,filename='d:',ize=5,Ma
某ize=unlimited,filegrowth=2)
logon
(name=lovedat_log,filename='d:',ize=3,
Ma某ize=25,filegrowth=5)
tableauthor(authoridintidentity(1,1)primarykeynotnul
l,authornamenvarchar(50)notnull,phonenvarchar(13)null,addrenvarc
har(255))
3.(1)altertableauthoradde某
char(2)null,citynvarchar(20)null;(2)altertableauthordropcolumnci
ty
(3)altertableauthoraltercolumnaddrenvarchar(500)notnull4.(1)
Update系部et系主任=’张中裕’where系部名称=’计算机
系’(2)Update系部et系部名称=replace(系部名称,’系’,’科学
系’)(3)Deletefrom系部where系主任like‘张%’
5.(1)elect某.某h,某m,kch,cjfrom某,某_kcwhere某.某h=某_kc.
某h;(2)elect某.某h,某m,kch,cjfrom某join某_kcon某.某h=某_kc.
某h;四、1.Createtriggerinert_jkhondbo.上机记录forinertAbegin
Print'上机卡中无此卡号,不能插入'Ele
Print'数据插入成功'end
Print'上机卡中无此卡号,不能插入'Ele
Print'数据插入成功'end