SQL试题及标准答案Word文档下载推荐.docx
- 文档编号:16498675
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:29
- 大小:36.60KB
SQL试题及标准答案Word文档下载推荐.docx
《SQL试题及标准答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《SQL试题及标准答案Word文档下载推荐.docx(29页珍藏版)》请在冰豆网上搜索。
10.在MSSQLServer中,用来显示数据库信息的系统存储过程是()。
A.sp_dbhelpB.sp_db
C.sp_helpD.sp_helpdb
二、简答题(16分)
1、什么是游标?
使用游标的步骤?
2、什么是事务?
事务的基本属性是什么?
三、应用题
1、创建一个名字为ks的数据库,包含一个数据文件和一个日志文件,逻辑文件名为ks_data,磁盘文件名为ks_data.mdf,文件初始容量为5MB,最大容量为10MB,文件递增量为1MB;
而事务日志文件的逻辑文件名ks_log,磁盘文件名为ks_log.ldf,文件初始容量为1MB,最大容量为5MB,文件递增量为1MB(数据库创建在C:
\SERVER文件夹下)(10分)
2、假设ks数据库有以下三张表,请写出下列问题的SQL语句:
(每题6分,共54分)
学生(学号,姓名,年龄,性别)
课程(课程号,课程名,任课教师)
成绩(学号,课程号,成绩)
(1)如何在SQLServer上创建这三张表;
(2)查询刘峰教师所授课程号,课程名;
(3)查询年龄大于20岁的所有男同学的学号、姓名;
(4)查询王文芳同学选修的所有课程的课程号;
(5)查询所有上刘峰老师课程的学生学号;
(6)查询所有选修“数据库技术”的学生的学号;
(7)向学生表中插入一条记录(’2003001’,’吴红’,21,’女’);
(8)删除三张表中所有学号为20020001的学生信息;
(9)把学号为20030002的学生的年龄改为22岁;
SQLServer2005复习题
一、选择题
1.SQL语言允许使用通配符进行字符串匹配的*作,其中‘%’可以表示(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()CMAX()DSUM()
5.以下哪个关键字用来定义记录在某属性上的约束条件(D)
ADEFAULTBDISTINCTCUNIQUEDCHECK
6.欲往表中增加一条记录,应该用哪一条SQL语句(B)
AALTERTABLEBINSERTINTOTABLE
CCREATETABLEDDROPTABLE
7.以下哪一个不是逻辑运算符(D)
ANOTBANDCORDIN
8.在创建表的过程中,哪个关键字用来定义默认值(D)
ADISTINCTBUNIQUECCHECKDDEFAULT
二、填空题
1数据库技术经历了人工管理阶段,_________和_______三个发展阶段。
2数据库系统中最常用的三种数据模型有层次模型,_________和_______。
3关系模式的三类完整性约束条件分别是_____,_____,和______。
4E-R图的主要元素是实体型,______,______。
5在E-R模型的主要术语中,属性的取值范围称为_______。
能够区别不同的实体且能唯一标识实体的最小属性集,称为______。
填空题答案:
1文件系统阶段,数据系统阶段
2网状模型,关系模型
3实体完整性,引用完整性约束,用户自定义完整性
4属性,联系
5域,实体集的实体键
三、判断题
1默认值绑定到列上后,该列上的值将固定不能改变(X)
2一张表允许有多个主键,但只能有一个外键(X)
3可以通过SQL语句修改数据库名称及表的名称(√)
4聚集函数SUM()与AVG()可以用来操作任何类型的数据(X)
5要删除一条记录使用DROP指令(X)
6在空串处理语句中,ISNULL用来判断属性值是否为空,在此IS是关键字,不是标准的逻辑运算符(√)
7在模糊查询中可以使用LIKE结合通配符一块儿实现,其中%代表单个字符(X)
8在查询语句中,若要把记录进行降序排列应使用ORDERBY字段名DESC(√)
9在创建表的过程中,如果一属性是DATETIME类型需要指定长度(X)
10在关系数据库的设计过程中,允许在设计后对表结构进行修改(√)
四、基本操作
现在要为学校建立一个数据库,设学校的环境如下:
一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生,现要建立关于系、学生、班级的数据库,关系模式为:
学生表STUDENT(学号,姓名,性别,生源地,出生日期)
班级表CLASS(班号,专业名,系号,入学年份)
系DEPARTMENT(系号,系名)
使用SQL语句完成一下功能:
1建立数据库名为SCHOOL并激活当前新建的数据库
CREATEDATABASESCHOOL
ONPRIMARY
(NAME=SCHOOL,
FILENAME='
D:
\SCHOOL.mdf'
SIZE=5MB,
MAXSIZE=20MB,
FILEGROWTH=1MB)
LOGON
(NAME=SCHOOL_log,
\SCHOOL_log.ldf'
SIZE=2MB,
FILEGROWTH=10%)
GO
useSCHOOL
2建表:
在定义中声明
1)每个表要有主键
2)学生的性别只能取‘男’或者‘女’
3)学生姓名不能为空
4)表CLASS中建立外键系名,关联表DEPARTMENT中的系名
5)系代号不能重复且不能为空
(1)学生表STUDENT(学号,姓名,性别,生源地,出生日期)
createtablestudent--学生表定义
(
学号char(10)primarykey,--主键为学号
姓名varchar(20)notnull,--姓名不能为空值
性别char(4)default'
男'
--性别默认为男性
生源地varchar(12),--生源地
出生日期datetime,
check((性别='
)or(性别='
女'
))--性别必须为男性或女性
)
(2)班级表CLASS(班号,专业名,系名,入学年份)
--班级表CLASS(班号,专业名,系名,入学年份)
createtableclass--班级表定义
班号char(4)primarykeynotnull,--定义班号不能为空值
专业名char(20),--定义专业名
系号char(4),--定义学分
入学年份datetime,--入学年份
foreignkey(系号)referencesdepartment(系号),
(3)系DEPARTMENT(系号,系名)
createtabledepartment--系表定义
系号char(4)primarykeynotnull,--系代号不能为空
系名char(8),--系名
unique(系号),--系号是唯一的,即系号不能重复
3插入如下数据
CALSS(101,软件,02,2003;
102,微电子,02,2004)
STUDENT(8101,张三,男,101,山东,1984;
8102,钱四,女,121,济南,1984;
8103,王玲,女,131,福建,1985;
8105,李飞,男,102,河北,1985)
DEPARTMENT(02,计算机;
03,数学;
04,化学)
insertintoclassvalues('
101'
'
软件'
02'
2003-09-01'
102'
微电子'
2004-09-01'
insertintostudentvalues('
8101'
张三'
山东'
1984-01-01'
8102'
钱四'
济南'
8103'
王玲'
福建'
1985-01-01'
8105'
李飞'
河北'
insertintodepartmentvalues('
计算机'
03'
数学'
04'
化学'
4完成以下的查询功能
(1)通过对学生信息表的查询,查询出所有学生的学号,姓名和性别
select学号,姓名,性别
fromstudent
(2)通过对学生信息表的查询,查询来自福建的学生的记录
select*
where生源地='
(3)在查询语句中,查询出学生姓名并计算出学生的年龄大小
select姓名,datediff(yy,出生日期,getdate())
(4)用模糊查询出姓钱的女生记录
where姓名like'
钱%'
(5)在查询语句中使用聚合函数计算出所有学生总数起别名为学生人数
selectcount(*)as'
学生人数'
(6)查询所有班级的信息,并用班级号进行降序排序
fromclass
orderby班号desc
(7)更新学号为8103的这位学生的姓名为张玲
updatestudent
set姓名='
张玲'
where学号='
(8)查找出学号在8101到8103的学生信息
where学号between'
and'
(9)删除姓名为李飞的学生记录
deletefromstudent
where姓名='
(10)删除数据表STUDENT
droptablestudent
SQLSERVER2005填空题
填空:
1.SQL(structuredpackingQueryLanguage)是__结构化查询_____________语言。
2.SQLSERVER的实例有两种,分别是__默认实例____和__命名实例_____。
3.SQLSERVER提供了四个系统数据库,分别是__master______、__tempdb______、_model_______、___msdb______。
4.SQLSERVER安装后,系统默认两个帐号,一个是BUILTIN\Administrator是WindowsNT组帐户,另一个是sa,sa是__超级管理员_________帐户.
5.SQLSERVER提供了两种形式的索引,分别是__聚集索引_和___非聚集索引_____。
6.SQL语言中,用于排序的是_ORDER_BY______子句,用于分组的是___GROUPBY______子句。
7.用统计函数__avg()______可以计算平均值,用统计函数__max()_______可以计算某一列上的最大值。
8.___count(*)_____是一个非常特殊但又非常有用的函数,它可以计算出满足约束条件的一组条件的行数。
9.当完成数据结果的查询和统计后,可以使用HAVING关键字来对查询和计算的结果进行__进一步的筛选________。
10.在INSERT语句中,VALUES列表中的表达式的数量,必须匹配列列表中的_列名次序一样,个数相等_____,
表达式的数据类型必须可以和表格中对应各列的数据类型___一一对应________。
11.SQL中,有一种简便的插入多行数据的方法,这种方法是使用___select语句_____________查询出的结果代替VALUES子句。
12.删除视图的语句是__DROPVIEWVIEW-NAME_________________________________。
13.模糊查询中,*表示__全部信息______________,%表示__表示从0-N个任意字符______________,[]表示_表示方括号里的列出的任意一个字符_________、[^]表示___任意一个没有再方括号里列出的字符_______。
14.视图是一种数据库对象,是从一个或多个表或视图中导出的_select语句_______,为视图提供数据的表称为__基表_____________。
15.数据库系统是指计算机系统中引进数据库后的系统构成,主要包括以下几方面:
计算机硬件、数据库、___数据库管理系统_________和___应用系统和用户______。
16.数据模型有三种类型,分别是_层次模型________、__网状模型______和___关系模型_________。
SQL属于_关系_______型数据库管理系统。
17.实体----关系(ER)图中的矩形框表示_实体_____、椭圆型框表示___属性_______________。
18.SQLSERVER的两种身份验证模式分别是___windows身份验证模式_________和_____混合模式____________。
19.SQL语言的英文全称为structuredpackingQueryLanguage,在SQL中,基本表的删除可用droptabletable-name语句,删除基本表中的所有元组可用delete[from]table-namewheresearch-conditions语句。
建立视图可用createviewview-name[column_name,......]asselectstatementwithcheckoption语句
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.若要删除sutdent表的全部数据,数据删除后不可撤销,应使用语句____________,若想删除student数据表,应使用语句________________。
6.在select查询中,若要消除重复行,应使用关键字_____________。
7.SQLServer2000局部变量名字必须以_________开头,而全局变量名字必须以_________开头。
8.SqlServer中的索引,按照索引的顺序是否与数据表中记录的物理顺序相同可分为__________和________。
9.触发器有3种类型,即INSERT类型、和。
得分
阅卷人
二、简答题(共3题,每题7分,共21分)
1、判断题(每题1分,共10分,答案填在下面表格中)
1
2
3
4
5
6
7
8
9
10
()1.在SQLServer中用户不能建立全局变量。
()2.主键字段允许为空。
()3.SQLServer的数据库可以导出为Access数据库。
()4.删除表时,表中的触发器不被同时删除。
()5.验证模式是在安装SQLServer过程中选择的。
系统安装之后,可以重新修改SQLServer系统的验证模式。
()6.视图本身不保存数据,因为视图是一个虚拟的表。
()7.在使用子查询时,必须使用括号把子查询括起来,以便区分外查询和子查询。
()8.SQLServer有数据导入功能但没有数据导出功能。
()9.SQLServer有数据备份功能但没有数据还原功能。
()10.一个表可以创建多个主键。
2、什么是视图?
视图和表相比有什么独特的优势?
3、数据库中的常用完整性有几种?
在SqlServer主要通过什么方式实现?
三、应用题(共9题,本题共54分。
现有关系数据库如下:
数据库名:
学生成绩数据库
学生信息表(学号char(6),姓名,性别,民族,身份证号)
课程信息表(课号char(6),名称)
成绩信息表(ID,学号,课号,分数)
用SQL语言实现下列功能的sql语句代码。
1.创建数据库[学生成绩数据库]代码。
2.创建数据表[课程信息表]代码;
课程信息表(课号char(6),名称);
要求使用:
主键(课号)、非空(名称)
3.创建数据表[学生信息表]代码;
要求使用:
主键(学号)、唯一(身份证号)、检查(性别)
4.查询所有学生的信息;
5.将下列课程信息添加到课程信息表的代码;
课号名称
101西班牙语
102大学英语
6.查询选修课号为102的课程的学生的成绩;
7.创建视图[成绩信息表视图]的代码;
成绩信息表视图(学号,姓名,课号,课程名称,分数)
8.从学生信息表中查询姓名中有“丽”的女同学的情况:
姓名、性别、民族。
四、编程题(共2题,每题5分,共10分)
1.在数据表上机记录中创建一个名为insert_sjkh的insert触发器其作用是:
当用户在“上机记录”表中插入记录时,若“上机卡”表中没有该上机号,则提示用户不能插入,否则,提示记录插入成功。
(附:
上机记录表结构:
(上机号char(13),上机日期datetime,开始时间datetime,结束时间datetime,上机状态bit)。
上机卡表结构:
(上机号char(13),姓名……)
2.在student数据库中的学生、课程注册、课程表中创建一个带参的存储过程cjcx。
其功能是:
当任意输入一个学生的姓名时,返回该学生的学号、选修的课程名和课程成绩。
然后使用存储过程,查询学生“周红瑜”的学号、选修的课程名和课程成绩
9.查询课程成绩小于60分的所有学生的信息,包括学号、姓名。
试卷1学习
1.SQLServer的身份验证方式有_______和________。
2.SQLSer
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 试题 标准答案