最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

SQL试题及答案

IT圈 admin 24浏览 0评论

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

发布评论

评论列表 (0)

  1. 暂无评论