大工19秋《sql数据库系统及应用》期末考试复习题.docx

上传人:b****6 文档编号:6706135 上传时间:2023-01-09 格式:DOCX 页数:14 大小:24.43KB
下载 相关 举报
大工19秋《sql数据库系统及应用》期末考试复习题.docx_第1页
第1页 / 共14页
大工19秋《sql数据库系统及应用》期末考试复习题.docx_第2页
第2页 / 共14页
大工19秋《sql数据库系统及应用》期末考试复习题.docx_第3页
第3页 / 共14页
大工19秋《sql数据库系统及应用》期末考试复习题.docx_第4页
第4页 / 共14页
大工19秋《sql数据库系统及应用》期末考试复习题.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

大工19秋《sql数据库系统及应用》期末考试复习题.docx

《大工19秋《sql数据库系统及应用》期末考试复习题.docx》由会员分享,可在线阅读,更多相关《大工19秋《sql数据库系统及应用》期末考试复习题.docx(14页珍藏版)》请在冰豆网上搜索。

大工19秋《sql数据库系统及应用》期末考试复习题.docx

大工19秋《sql数据库系统及应用》期末考试复习题

机密★启用前

大连理工大学网络教育学院

2019年秋《SQL数据库系统及应用》

期末考试复习题

☆注意事项:

本复习题满分共:

400分。

一、填空题

1.在关系数据库的规范中,在一个关系中,消除重复字段,且各字段都是最小的逻辑存储单元代表第______________范式。

答案:

2.在索引命令中使用关键字CLUSTERED和NONCLUSTERED分别表示将建立的是______________和______________。

在一个表上,最多可以定义______________个聚集索引,最多可以有______________个非聚集索引。

答案:

聚集索引、非聚集索引、1、多

3.常见的关系数据库有ACCESS、______________和______________。

答案:

SQLServer、Oracle

4.从表中删除数据的命令是______________from______________where……。

答案:

Delete、表名

5.创建表的语句是:

____________________________表名……。

向表中插入数据的命令是insert______________表名______________(constant1,constant2,……)。

答案:

CREATE、TABLE、into、values

6.关系是笛卡尔积的有限子集,所以是一个______________维表,表的每行对应一个______________,每列对应一个______________。

答案:

二、元组、域

7.ABS函数的功能是返回数值表达式的______________。

答案:

绝对值

8.LIKE查询中______________符号代表由零个或更多字符组成的任意字符串,下划线“_”符号代表______________字符。

答案:

%、任意单个

9.语句selectlower('Beautiful')的执行结果是______________。

答案:

beautiful

10.在MicrosoftSQLServer2008中,主数据文件和日志文件的后缀分别是______________、______________。

答案:

.mdf、.ldf

11.为student表的______________列创建______________聚集索引的语句为:

______________unique______________indexIX_stu11onstudent(sno)。

答案:

sno、唯一、create、clustered

12.创建索引的语句是:

______________INDEX……。

答案:

CREATE

13.语句selectround(12.3421,2),round(23.4567,3)的执行结果是:

______________和______________。

答案:

12.34,23.457

二、简答题

1.T-SQL和SQL的关系是什么?

对SQLServer实例访问,SQLServer2008支持哪几种身份验证模式?

答案:

SQL全称是“结构化查询语言(StructuredQueryLanguage)”。

SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

T-SQL是标准SQL设计语言的增强版,它是用来让应用程式与SQLServer沟通的主要语言。

T-SQL是在SQL的基础上发展起来的一种结构化查询语言,在使用时,要用到SSMS(SQLServerManagementStudio)中的查询编辑器。

SQLServer2008支持两种身份验证模式:

Windows身份验证模式和混合身份验证模式。

Windows身份验证模式使用Windows操作系统中的信息验证账户名和密码,默认的身份验证模式。

混合身份验证模式允许用户使用Windows身份验证或SQLServer身份验证进行连接。

2.简述SELECT语句中的FROM、WHERE以及ORDERBY子句的作用。

SQLServer2008系统中主要数据库对象都有哪些?

答案:

在SELECT语句中:

FROM子句:

用来指定数据来源的表;

WHERE子句:

用来限定返回行的搜索条件;

ORDERBY子句:

用来指定结果的排序方式。

主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规则和默认值等。

3.如何使用IF…ELSE流程控制语句?

答案:

一个逻辑表达式的结果要么为真,要么为假。

根据不同的结果,对应于不同的操作。

这时就需要使用IF…ELSE语句在程序中对于给定条件进行判断。

语法格式如下:

IF条件表达式{语句体1}[ELSE{语句体2}]

说明:

●条件表达式的运算结果应该为TRUE(真)或FALSE(假),如果条件表达式中含有SELECT语句,则必须用圆括号将SELECT语句括起来;

●当条件表达式的值为TRUE时执行语句体1,然后执行IF语句之后的语句;如果条件表达式的值为FALSE,则执行ELSE关键字后面的语句体2,然后执行IF语句之后的语句;

可以在IF区域或者ELSE区域嵌套另一个IF语句,对于嵌套的层数没有限制。

4.T-SQL的注释符是什么?

答案:

注释也称注解,是程序代码中不执行的文本字符串。

注释主要描述程序名称、作者名称、变量说明、代码更改日期、算法描述等。

使用注释对代码进行说明,不仅能够使程序易读易懂,而且有助于日后对程序的管理与维护。

在T-SQL中,可以使用两种类型的注释符:

注释符“--”用于单行注释

注释符“/**/”,用于注释多行文字

5.SQL语句中SUM函数、COUNT函数、AVG函数的功能是什么?

答案:

SUM函数:

计算值的总和并返回总数。

COUNT函数:

计算记录数。

AVG函数:

返回指定列中的平均值。

6.对表进行数据操作包括哪几种?

答:

包括数据的插入,修改,删除三种操作

7.在关系数据库中是按照“二维表”的形式来组织数据的,每张表由哪两部分组成?

简述Master数据库、Tempdb数据库、Model数据库、Msdb数据库的功能。

答:

一部分是关于表的结构定义信息,包括表的名称,列的名称,列的长度和列的数据类型等;另一部分是存储在表中的用户数据

Master数据库:

SQLServer最重要的数据库,记录SQLServer实例的所有系统级别信息,包括所有的登录账号和系统配置等。

Tempdb数据库:

临时数据库,保存临时对象或中间结果集。

Model数据库:

创建数据库的模版。

Msdb数据库:

SQLServer代理程序调度警报和作业以及记录操作。

8.SQLServer中,约束条件有哪几种类型,都是什么?

答:

有五种类型:

空值约束,唯一约束,主键约束,外键约束,检查约束.

9.说明HAVING子句与WHERE子句之间的区别,简述WHILE流程控制语句的使用方式。

答:

WHERE子句是用来指定数据库表中数据行应该满足的条件,HAVING子句是在分组(GROUPBY子句)前提下选择每一个分组应该满足的条件

WHILE语句是一种将同一段代码循环运行多次的方法,它可以根据一个条件表达式的结果,将代码从0次开始运行到指定次数,或者是持续运行直到遇见BREAK关键字退出循环。

WHILE语句的语法格式如下:

WHILE条件表达式

Begin循环体end

可以在循环体内设置BREAK和CONTINUE关键字,以便控制循环语句的执行。

10.SQL语言的命令一般分为哪四类语句?

简述修改操作过程中和插入操作过程中的常见异常情况。

答:

SQL语言的命令分为查询,数据操纵,数据定义和数据控制四类语句。

修改过程中异常情况:

1)没有要修改的数据

2)设置新值时,数据类型不兼容

3)修改数据时违背了约束

插入过程中异常情况:

1)插入数据值的个数多于列的个数

2)提供数据的类型与列类型不兼容

3)插入数据时违背了约束

11.

(1)什么是连接?

自身连接、内连接和外连接分别代表什么含义?

(2)什么是触发器?

请说出INSTEADOF触发器和AFTER触发器的特点。

答案:

(1)连接:

“在笛卡尔积的基础上只保留满足一定条件的新生成数据行”这样的操作被称为连接(JOIN)。

自身连接:

一个表与其自己进行连接,称为表的自身连接。

内连接:

普通连接(内连接)操作只输出满足连接条件的元组。

外连接:

外连接操作以指定表为连接主体,将主体表中不满足连接条件的元组一并输出。

(2)触发器:

是一种特殊类型的存储过程,在插入、删除或修改特定表中的数据时触发执行。

INSTEADOF触发器:

使用触发器的操作替换导致触发器执行的语句所本应进行的操作。

AFTER触发器:

在语句执行之后执行触发器。

12.根据以下情况,写出创建course表的语句。

属性列

数据类型

长度

空值

列约束

cs_id

nVarChar

4

NotNull

PK

cs_nm

nVarChar

20

NotNull

cs_tm

int

Null

cs_sc

int

Null

答案:

酌情给分

CREATETABLEcourse

cs_idnVarChar(4)primarykeyNOTNULL,

cs_nmnVarChar(20)NOTNULL,

cs_tmintNULL,

cs_scintNULL

13.

(1)请写出在某数据库中执行以下语句后的输出结果。

CREATETABLEtabl(CNOCHAR(3),NAMEVARCHAR(20),CLASSVARCHAR(20))

INSERTINTOtablvalues('001','方健','三年二班')

INSERTINTOtablvalues('002','李勇','三年一班')

select*fromtabl

(2)请写出在某数据库中执行以下语句后的输出结果。

CREATETABLEtable1(CNOCHAR(3)primarykey,NAMEVARCHAR(20),gradeint)

INSERTINTOtable1values('001','方明',85)

INSERTINTOtable1values('002','李元',90)

INSERTINTOtable1values('003','徐汇',75)

INSERTINTOtable1values('004','王希',59)

INSERTINTOtable1values('005','刘玉',70)

selectCNO,NAMEfromtable1wheregradebetween60and80orderbygrade

答案:

(1)

001

方健

三年二班

002

李勇

三年一班

(2)

005

刘玉

003

徐汇

 

14.已知有如下student表:

StudID

Name

DeptID

Minzu

1

张三

12

汉族

2

李赛

12

汉族

3

王明

13

蒙古族

4

李密

12

汉族

5

刘凤

15

满族

请写出执行以下语句后的输出结果。

(1)SELECTName,MinzuFROMstudentWHEREDeptIDBETWEEN'13'AND'15'

(2)SELECT*FROMstudentWHEREDeptIDIN('12','15')

答案:

(1)5分

王明

蒙古族

刘凤

满族

(2)5分

1

张三

12

汉族

2

李赛

12

汉族

4

李密

12

汉族

5

刘凤

15

满族

15.已知有如下student表:

StudID

Name

DeptID

Minzu

1

张三

12

汉族

2

李赛

12

汉族

3

王明

13

蒙古族

4

李密

12

汉族

5

刘凤

15

满族

请写出执行以下语句后的输出结果。

(1)SELECTName,MinzuFROMstudentWHEREDeptIDBETWEEN'13'AND'15'

(2)SELECT*FROMstudentWHEREDeptIDIN('12','15')

答案:

(1)5分

王明

蒙古族

刘凤

满族

(2)5分

1

张三

12

汉族

2

李赛

12

汉族

4

李密

12

汉族

5

刘凤

15

满族

 

三、SQL综合编程题

1.有家企业要用表t1来存储客户的信息。

客户的信息包括:

代号(int,主键),名称(char(20)),电话(char(20)),传真(char(20)),备注(nvarchar(1000))。

(1)请写出创建该表的SQL语句。

(2)后来因手机流行,需要在表t1中再添加列“手机”,该列的类型是char(11)。

请写出添加该列的SQL语句。

答案:

(1)

Createtablet1

(代号intprimarykey,名称char(20),电话char(20),传真char(20),

备注nvarchar(1000))

(2)

altertablet1add手机char(11)

2.

(1)创建学生信息表student:

StudID(代表学号char(8),非空主键),Name(学生姓名varchar(20),非空),Birthday(生日,非空),DeptID(院系号char

(2),非空)。

请写出创建这个表的T-SQL语句。

(2)查询所有在12院系下的学生的学号以及姓名。

答案:

代码酌情给分

(1)CREATETABLEstudent

StudIDchar(8)notnullPRIMARYKEY,

Namevarchar(20)notnull,

Birthdaydatenotnull,

DeptIDchar

(2)notnull

(2)selectStudID,NamefromstudentwhereDeptID=’12’

3.

(1)给某公司创建表tblEmployees:

ID(代表雇员的代号,4个字符,唯一)、IDCARD(代表身份证,18个字符)、Name(代表雇员姓名,20个字符)和Gongzi(代表工资信息)。

请写出创建这个表的T-SQL语句,要保证:

工资的值大于0,身份证号码唯一。

(2)查询雇员为“张三”的工资信息。

(3)查询工资大于5000的所有信息。

答案:

代码酌情给分

(2)createtabletblEmployees

(IDchar(4)unique,

IDCARDchar(18)unique,

Namechar(20),

Gongziintcheck(Gongzi>0))

(2)selectGongzifromtblEmployeeswhereName=’张三’

(3)select*fromtblEmployeeswhereGongzi>5000

4.用SQL语言实现下列功能的sql语句代码:

(1)创建数据表[宿舍表]:

宿舍表(宿舍号char(6),宿舍电话),要求使用:

主键(宿舍号)、宿舍电话:

以847开头的7位电话号码

(2)将下列两条宿舍信息[宿舍号,宿舍电话]添加到宿舍表:

[101,8471157][102,8471777]。

答案:

酌情给分

(1)createtable宿舍表

([宿舍号]char(6)primarykey,

[宿舍电话]char(7)check([宿舍电话]like'847[0-9][0-9][0-9][0-9]'))

(2)insert宿舍表values('101','8471157')

insert宿舍表values('102','8471777')

5.创建数据表[同学表]:

同学表(学号char(6),姓名,性别,年龄,民族,身份证号,宿舍号),要求使用:

主键(学号)、默认(民族为汉族)、非空(民族,姓名,年龄)、唯一(身份证号)、检查(性别为男或女)。

创建该表后,完成下列操作:

(1)写出表中不是202宿舍的学生信息的语句。

(2)写出查询表中姓名包含“徐”的所有信息的语句。

答案:

酌情给分

(1)createtable同学表

(学号char(6)primarykey,

姓名nchar(4)notnull,

性别nchar

(1)check(性别in('男','女')),

年龄int,

民族nchar(8)default'汉族'notnull,

身份证号char(18)unique,

宿舍号char(6)

(1)SELECT*FROM同学表WHERENOT(宿舍号='202')

(2)SELECT*FROM同学表WHERE姓名LIKE'%徐%'

6.已知数据库中存在:

同学表(学号,姓名,性别,身份证号,宿舍号)和宿舍表(宿舍号,宿舍电话)。

(1)从同学表中查询男同学的姓名、身份证号、宿舍号。

(2)将下列宿舍信息添加到宿舍表:

宿舍号

宿舍电话

104

8471057

109

8470333

答案:

酌情给分

(1)select姓名,身份证号,宿舍号from同学表where性别='男'

(2)insert宿舍表values('104','8471057')

insert宿舍表values('109','8470333')

7.现有数据表如下:

学生信息表(学号char(6),姓名,性别,民族,身份证号),课程信息表(课号char(6),名称),成绩信息表(ID,学号,课号,分数)

(1)从学生信息表中查询姓刘的女同学的情况:

姓名、性别、民族。

(2)查询有一门或一门以上课程成绩小于60分的所有学生的信息,包括学号、姓名。

(3)使用SQL语句把学生信息表中“姓名”由8个字符改为20个字符。

(4)把课程信息表中“课程号”为C001的“名称”由大学英语1改为大学英语2。

答案:

(1)select姓名,性别,民族from学生信息表where姓名like'刘%'and性别='女'

(2)select学号,姓名from学生信息表where学号in(selectdistinct学号from成绩信息表where分数<60)

(3)altertable学生信息表

altercolumn姓名char(20)notnull

(4)update课程信息表

set名称=’大学英语2’

where课号=’C001’

四、单选题

1.D2.D3.C4.C5.A

6.D7.D8.C9.C10.A

1..以下聚合函数中用于返回最小值的是()。

A.VARP

B.COUNT

C.MAX

D.MIN

2、下面SQL语句中,求每个交易所的平均单价的语句是SELECT交易所,avg(单价)FROMstock()。

A.GROUPSBY单价

B.ORDERSBY单价

C.ORDERBY交易所

D.GROUPBY交易所

3、当指定筛选条件时,SELECT语句中与HAVING子句通常同时使用的是()语句。

A.ORDERSBY

B.HEREBY

C.GROUPBY

D.THEREBY

4、使用selecttop5*fromemployee语句得到的结果集中有()条记录。

A.8

B.2

C.5

D.6

5、每个数据库有且只有一个()。

A.主要数据文件

B.次要数据文件

C.日志文件

D.数据表

6.要删除视图myviewview,可以使用()语句。

A.DROPdatabasemyviewview

B.DROPTABLEmyviewview

C.DROPINDEXmyviewview

D.DROPVIEWmyviewview

7、下面符号中,SQL中可使用的符号是()。

A.*

B.%

C.=

D.以上都可以

8、当SQLServer创建一个新的数据库时,可用于作为模板的系统数据库是()。

A.Msdb数据库

B.Master数据库

C.Model数据库

D.Tempdb数据库

9、在SQL查询语句中,HAVING子句的作用是指出()。

A.排序的范围

B.查询结果的最大值

C.分组查询的条件

D.创建数据表的字段

10、使用语句CREATEDATABASESHUJUKU创建的数据文件放在()。

A.SQLServer的默认路径下

B.D盘

C.E盘

D.F盘

五、判断题

1.×2.√3.√4.×5.×

6.×7.√8.√9.×10.×

1、SQL语句中,DROPDATABASE语句用于修改数据表中数据。

2、SSMS代表SQLServerManagementStudio,提供了用于数据库管理的图形工具和功能丰富的开发环境。

3、createdatabase语句可以在创建数据库时指定数据库名称等。

4、SQL中,FROM语句用于向已经存在的表中插入新的数据。

5、表创建之后,只能包含一组数据。

6、SQLServer中常用的数据类型中datetime和char是数字数据类型,非日期信息。

7、变量为int型,语句beginset@t=@xset@x=@yset@y=@tend完成两个变量的数值交换。

8、语句SELECT*FROMstudent,departWHEREstudent.dNo=depart.dNo与SELECT*FROMstudentJOINdepartONstudent.dNo=depart.dNo查询结果一致。

9、Select姓名,性别fromstudentgroupby性别,这个语句是正确的。

10、SQLServer提供了多个固定数据库角色,其中db_securityadmin是可以设置访问权限,不能修改角色管理权限。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1