数据库原理与应用教程典型复习题及答案.docx
《数据库原理与应用教程典型复习题及答案.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用教程典型复习题及答案.docx(20页珍藏版)》请在冰豆网上搜索。
![数据库原理与应用教程典型复习题及答案.docx](https://file1.bdocx.com/fileroot1/2023-2/2/b024e949-51b7-40c3-bf56-630c46d06c5e/b024e949-51b7-40c3-bf56-630c46d06c5e1.gif)
数据库原理与应用教程典型复习题及答案
数据库与原理应用教程典型题复习
一、数据库系统引论
一.选择题
1.数据库技术是计算机软件的一个重要分支,产生于()年代末。
A.20世纪70B.20世纪60C.20世纪80D.20世纪30
B.20世纪60
2.单击“查询编辑器”窗口中的任意位置。
按()命令,可以在全屏显示模式和常规显示模式之间进行切换。
A.Shift+Alt+EnterB.Shift+EnterC.Shift+AltD.Shift
A.Shift+Alt+Enter
3.单击工具栏中的()按钮或键,执行SQL查询语句,并在查询结果窗口显示查询结果。
A.√B.
C.
D.
C.
二.填空题
1.数据管理技术的发展大致经历了__________、__________、__________三个阶段。
人工管理方式、文件管理方式、数据库系统管理方式
2.SQLServer有两种身份验证模式,如果选择_________,SQLServer系统根据用户的Windows帐号允许或拒绝访问;如果选择_________,你要提供一个SQLServer登录用户名和口令,该记录将保存在SQLServer内部,而且该记录与任何Windows帐号无关。
Window身份验证模式、SQLServer身份验证模式
3.在查询编辑器窗口输入的SQL语句,可以被保存或重新打开,SQL文件的扩展名为_________。
.sql
4.SQLServer配置工具包括__________、__________、__________、__________、__________。
ReportingServices配置、NotificationServices命令提示、SQLServerConfigurationManager、SQLServer错误和使用情况报告、SQLServer外围应用配置器。
二、数据库系统的数据模型
一.选择题
1.同一个关系模型的任两个元组值()。
A.不能全同B.可全同C.必须全同D.以上都不是
A.不能全同
2.()模型是以记录型为结点构成的树,它把客观问题抽象为一个严格的自上而下的层次关系,在层次模型中,只存在一对多的实体关系,每个结点表示一个记录类型,结点之间的连线表示记录类型之间的联系。
A.网状B.层次C.关系D.层次和关系
B.层次
3.通常情况下,数据模型由()三部分组成。
A.数据结构、数据操作和完整性约束B.层次、数据操作和完整性约束C.关系、数据操作和完整性约束D.层次、关系和完整性约束
A.数据结构、数据操作和完整性约束
4.关系模型中数据的逻辑结构是一张二维表,它由()组成。
A.行和列B.行C.关系D.列
A.行和列
二.填空题
1.数据库是由___________组成的一个结构化的集合,这些数据经过整理之后存储在___________或___________文件中,管理数据库的软件称为___________。
二维表格、数据文件、日志文件、数据库管理系统
2.数据模型应能够___________,只有数据模型精确表达了真实的世界,才能正确地在计算机中存储数据信息。
数据模型应___________,数据模型不但要被设计人员所理解,而且也要被用户所理解。
数据模型应___________,便于在计算机上实现。
由于计算机不能直接处理现实世界中的客观事物,所以必须通过一定的规则,将客观事物转化成可以存储在计算机中的数据,并有序地存储、管理这些数据,用户利用这些数据能够查询所需的信息。
比较真实地模拟现实世界、容易被人所理解、便于计算机上实现
3.关系模型的完整性规则是对数据的约束。
关系模型提供了三类完整性规则___________、___________和___________。
实体完整性规则、参照完整性规则、用户定义的完整性规则
三、SQLServer数据库架构
一.选择题
1.“借书日期必须在还书日期之前”这种约束属于DBS的()功能。
A.恢复B.并发控制C.完整性D.安全性
C.完整性
2.在数据中,产生数据不一致的根本原因是()。
A.没有严格保护数据B.数据存储量太大C.数据间联系弱D.数据冗余.
D.数据冗余
3.次数据文件用于存储不能存在主数据文件中的数据,默认扩展名为()。
A..ndfB..mdfC..logD..dat
A..ndf
4.关系模式中各级范式之间的关系为()。
A.3NF
2NF
1NFB.3NF
1NF
2NFC.1NF
2NF
3NFD.2NF
1NF
3NF
A.3NF
2NF
1NF
5.数据库系统的体系统结构分为()三级。
A.概念模式、用户模式、存储模式B.概念模式、用户模式、逻辑结构C.概念模式、用户模式、物理结构D.概念模式、用户模式、局部数据
A.概念模式、用户模式、存储模式
6.存储模式是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
一个数据库对应()个存储模式。
A.2B.多个C.1D.10
C.1
7.字段名是用来访问表中具体域的标识符,字段名可以含有()个字符,它由字母、下划线以及数字组成,并且字母、下划线、#可以是字段名的第一个字符。
A.1到128个B.1到100个C.1到8个D.1到12个
A.1到128个
8.通常情况,SQLServer2005主要支持PRIMARY约束、UNIQUE约束、CHECK约束、DEFAULT约束、FOREIGN约束。
()在定义列时,它可以为表中的指定列提供默认值。
A.FOREIGN约束B.DEFAULT约束C.UNIQUE约束D.CHECK约束
B.DEFAULT约束
四、数据库管理
一.选择题
1.创建S时,要求约束sex属性只能取值为男或者女,正确的命令是()。
A.CREATETABLESB.CREATETABLES
((
sexchar
(2),sexchar
(2),
CHECK(sexin('男','女'))CHECK('男','女')
))
C.CREATETABLESD.CREATETABLES
((
sexchar
(2),sexin('男','女')char
(2),
sexin('男','女'))
)
A
2.通过CREATETABLE语句或者其他方法创建了一个表后,可以使用()语句在表中添加记录。
A.DELETEB.INSERTC.UPDATED.INSEATER
B.INSERT
3.如果需要删除表中包含的无用数据,可以使用DELETE语句从表中删除满足条件的若干条记录,也可以使用()语句从表中快速删除所有记录。
A.DELETEB.TRUNCATETABLEC.DELD.INSEATER
B.TRUNCATETABLE
4.数据类型()只能取从1900年1月1日到2079年6月6日的日期和时间数据,精确到分钟。
每个数值要求4个字节的存储空间。
如:
“2000-05-0812:
35:
29.998”。
A.smalldatetimeB.dateC.datetimeD.time
A.smalldatetime
5.可变长度的字符数据类型nvarchar,其最大长度为()字符。
A.4000B.8000C.5000D.7000
A.4000
二.填空题
1.在CREATEINDEX语句中使用____选项创建惟一索引。
UNIQUE
2.在CREATEINDEX语句中使用____选项建立非簇索引。
.
NONCLUSTERED
三.问答题
1.聚集索引与非聚集索引之间有哪些不同点?
在一个表中可以建立多少个聚集索引和非聚集索引?
①在聚集索引中,表中各记录的物理顺序与索引的逻辑顺序相同,只有在表中建立了一个聚集索引后,数据才会按照索引键值的顺序存储到表中。
由于一个表中的数据只能按照一种顺序存储,所以在表中只能建立一个聚集索引。
通常在主键上创建聚集索引。
②非聚集索引是完全独立于数据行的结构,表中的数据行不按非聚集索引的顺序排序和存储。
在非聚集索引内,从索引行指向数据行的指针称为行定位器。
在检索数据时,SQLServer先在非聚集索引上搜索,找到相关信息后,再利用行定位器,找到数据表中的数据行。
一个表上可以建立多个非聚集索引。
如果在一个表中既要创建聚集索引,又要创建非聚集索引,应先创建聚集索引,然后创建非聚集索引。
因为创建聚集索引时将改变数据行的物理存放顺序。
聚集索引的键值是唯一的,非聚集索引的键值可以重复,当然也可以指定唯一选项,这样任何两行记录的索引键值就不会相同。
2.在哪些情况下,SQLSERVER会自动创建索引?
.
建立主键时.
3.在studentcourse数据库的学生信息表S上的学生姓名字段上创建一个非聚集索引。
CREATENONCLUSTEREDINDEXID_XMONS(姓名)
五、关系数据库方法
一.选择题
1.关系代数的交操作由()操作组合而成。
A.并B.投影C.差D.笛卡儿积
C.差
2.下列式子中不正确的是()。
A.R∪S=R∪(S-R)B.R∪S=S∪(S-R)C.R∩S=R-(R-S)D.R∩S=S-(S-R)
B.R∪S=S∪(S-R)
3.在关系数据库系统中,一个关系就是()。
A.一张二维表B.一条记录C.一个关系数据库D.一个关系代数运算
A.一张二维表
4.有关系:
R(A,B,C),主键=A;S(D,A),主键=D,外键=A,参照R的属性A,关系R和S的元组如下表所示。
则S表中的A可以取()值。
A.1和2B.1C.2D.NULL
R
A
B
C
1
2
3
2
1
3
A.1和2
5.给定三个域:
D1={王芳,刘吉},D2={高工,助工},D3={男,女},求D1×D2×D3笛卡尔积的基数()。
A.2B.4C.6D.8
D.8
6.进行自然联接运算的两个关系必须具有()。
A.相同的属性个数B.公共属性C.相同关系名D.相同关键字
A.相同的属性个数
二.填空题
1.已知数据库中包含四张数据表,如下。
PRODUCT(生产厂家,型号);PC(型号,内存容量,硬盘容量,价格);PRINTER(型号,是否彩色,价格)。
试用关系代数表达下列查询。
(1)找出价格在8000元以下的PC机的型号、内存容量和硬盘容量。
(2)找同彩色打印机的所有信息。
(3)找出生产打印机的所有厂家。
(1)∏[型号,内存容量,硬盘容量]((σ价格<8000(PRODUCT))
(2)∏[生产厂家,型号,是否彩色,价格](σ是否彩色=T(PRODUCT
PRINTER)
(3)∏[生产厂家](PRODUCT
PRINTER)
六、查询管理
一.选择题
1.语句SELECTname,性别,出生日期FROMxs返回()列。
A.1B.2C.3D.4
C.3
2.语句SELECTcount(*)FROMxs返回()行。
A.1B.2C.3D.4
A.1
3.语句SELECT1.2*0.5的结果是()。
A.NULLB.1C.0D.0.6
D.0.6
4.在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建()。
A.另一个表B.游标C.视图D.索引
C.视图
5.一个查询的结果成为另一个查询的条件,这种查询被称为()。
A.连接查询B.内查询C.自查询D.子查询
D.子查询
6.为了对表中的各行进行快速访问,应对此表建立()。
A.约束B.规则C.索引D.视图
C.索引
7.SELECT语句中,下列()子句用于对数据按照某个字段分组。
()子句用于对分组统计进一步设置条件。
A.HAVING子句B.GROUPBY子句C.ORDERBY子句D.WHERE子句
B.GROUPBY子句、A.HAVING子句
8.在SELECT语句中,下列子句用于选择列表()。
A.SELECT子句B.INTO子句C.FROM子句D.WHERE子句
A.SELECT子句
9.在SELECT语句中,下列子句用于将查询结果存储在一个新表中()。
A.SELECT子句B.INTO子句C.FROM子句D.WHERE子句
B.INTO子句
10.在SELECT语句中,下列子句用于指出所查询的数据表名()。
A.SELECT子句B.INTO子句C.FROM子句D.WHERE子句
C.FROM子句
11.在SELECT语句中,下列子句用于对搜索的结果进行排序()。
A.HAVING子句B.GROUPBY子句C.ORDERBY子句D.WHERE子句
C.ORDERBY子句
12.在SELECT语句中,如果想要返回的结果集中不包含相同的行,应该使用关键字()。
A.TOPB.ASC.DISTINCTD.JOIN
C.DISTINCT
13.SQL中,谓词操作“EXISTSR(集合)”与下列()等价。
A.当且仅当R空时,该条件为真。
B.<>SOMEC.当且仅当R非空时,该条件为真。
D.=SOME
C.当且仅当R非空时,该条件为真。
14.SQL的聚合函数COUNT,不允许出现在下列查询语句的()子句中。
A.SELECTB.HAVINGC.WHERED.GROUPBY
C.WHERE
15.与WHEREAGEBETWEEN18AND23完全等价的是()。
A.WHEREAGE>18ANDAGE<23B.WHEREAGE>=18ANDAGE<23C.WHEREAGE>18ANDAGE<=23D.WHEREAGE>=18ANDAGE<=23
二.填空题
1.在SQL语句中___________语句使用频率最高。
SELECT
2.WHERE子句后一般跟着___________。
条件
3.使用SELECTINTO创建查询结果表时,若只需要临时表则要在表名前加_________。
#
4.在查询条件中,可以使用另一个查询的结果作为条件的一部分,例如判定列值是否与某个查询的结果集中的值相等,作为查询条件一部分的查询称为__________。
子查询
5.EXISTS谓词用于测试子查询的结果是否为空表。
若子查询的结果集不为空,则EXISTS返回__________,否则返回__________。
EXISTS还可以与NOT结合使用,即NOTEXISTS,其返回值与EXISTS刚好__________。
T、F、相反
6.SELECT语句中,主要子句包括__________、__________、__________、__________及_________等。
FROM,INTO,GROUPBY,ORDERBY,WHERE。
7.SQL是__________。
结构化查询语言
8.数据对象的引用由四部分组成,分别为:
__________、__________、__________、__________。
[sever_name]指定链接的服务器名称或远程服务器名称.[database_name]如果对象驻留在SQLServer的本地实例中,则指定SQLServer数据库的名称,如果对象在链接服务器中,则指定OLEDB目录.[schema_name]如果对象在SQLServer数据库中,则指定包含对象的架构的名称,如果对象在链接服务器中,则指定OLEDB架构名称.object_name对象的名称
9.在查询窗口中用户可以输入SQL语句,并按__________键,或单击工具栏上的运行按钮,将其送到服务器执行,执行的结果将显示在输出窗口中。
F5
10.保存当前的查询命令或查询结果,系统默认的文件后缀为__________。
Sql
11.连接查询的类型有__________、__________、__________3种。
内连接,外连接,交叉连接
12.内连接有__________、__________、__________等。
等值连接,自然连接,自连接
13.外连接有__________、__________、__________等。
左外连接,右外连接,完全外连接
三.简答题
1.SELECT语句的语法结构是怎样的?
SELECT<属性列表>--它可以是星号(*)、表达式、列表、变量等。
[INTO新表]--用查询结果集合创建一个新表
FROM<基本表>(或视图序列)--最多可以指定16个表或者视图,用逗号相互隔开。
[WHERE条件表达式]
[GROUPBY属性名表]--分组子句
[HAVING组条件表达式]--组条件子句
[ORDERBY属性名[ASC|DESC]..]--排序子句
[COMPUTE集函数(列名)]--汇总子句
2.举例说明什么是内连接.外连接和交叉连接?
(1)内连接格式如下:
SELECT列名FROM表1INNERJOIN表2ON<连接的条件>
内连接按照ON指定的连接条件合并两个表,只返回满足条件的行,也可用于多个表的连接。
只返回符合查询条件或连接条件的行作为结果集,即删除所有不符合限定条件的行。
(2)外连接不但包含满足条件的行,还包括相应表中的所有行,只能用于两个表的连接。
实际上基本表的外连接操作可以分为3类。
左外连接格式如下:
SELECT列名FROM表1LEFTJOIN表2
右外连接格式如下:
SELECT列名FROM表1RIGHTJOIN表2
全外连接格式如下:
SELECT列名FROM表1FULLJOIN表2
(3)交叉连接格式如下:
SELECT列名FROM表1CROSSJOIN表2
交叉连接相当于广义笛卡尔积。
不能加筛选条件,即不能带WHERE子句。
结果表是第一个表的每行与第二个表的每行拼接后形成的表,结果表的行数等于两个表行数之积。
七、视图管理
一.选择题
1.SQL的视图是从()中导出的。
A.基本表B.视图C.基本表或视图D.数据库
C.基本表或视图
2.创建视图命令是()。
A.CREATEVIEWB.DROPVIEWC.CREATETABLED.CREATERULE
A.CREATEVIEW
3.修改视图时,使用()选项,可以对CREATEVIEW的文本进行加密。
A.WITHENCRYPTIONB.WITHCHECKOPTIONC.VIEW_METADATAD.ASSQL语句
A.WITHENCRYPTION
二.填空题
1.对视图的操作与对表的操作一样,可以对其进行_________、_________与_________,但对数据的操作要满足一定的条件。
当对通过视图看到的数据进行修改时,相应的基础表的数据也会发生变化,同样,若基础表的数据发生变化,也会自动反映到_________中。
查询、修改、删除、视图
2.“WITHCHECKOPTION”选项强制视图上执行的所有数据修改语句都必须符合由_________设置的准则。
通过视图修改数据行时,WITHCHECKOPTION可确保提交修改后,仍可通过视图看到修改的数据。
Select_statament
3.关系图窗格以图形显示选择的表对象及它们之间的连接关系。
每个表对象在关系图窗格中以单独的窗口出现。
窗口标题栏中的图标表示该窗口所代表的对象类型,图标
表示对象类型为_________,图标
表示对象类型为_________,图标
表示对象类型为_________,图标
表示对象类型为_________,图标
表示对象类型为_________,图标
表示对象类型为_________。
表、视图、链接表、用户定义的函数、子查询、链接视图
八、Transact-SQL常用语言元素
一.选择题
1.下列()不是SQLServer2005的注释符号。
A./*B.//C.--D.*/
B.//
2.()函数可以从字符表达式中的第m个字符开始截取n个字符,形成一个新字符串,m,n都是数值表达式。
A.SUBSTRING()B.STUFF()C.RIGHT()D.LEFT()
A.SUBSTRING()
3.()函数可以将字符串redgreenblue中的green替换成black。
判断blue字符长度。
A.STUFF('black',4,5,'redgreenblue')B.STUFF('redgreenblue','black')C.STUFF('black',4,5,'redgreenblue')D.STUFF('redgreenblue',4,5,'black')
D.STUFF('redgreenblue',4,5,'black')
4.ROUND(321.45678,-1)函数返回值是()。
A.300.00000B.320.00000C.321-D.321.5
B.320.00000
5.常用系统函数DB_NAME()的功能是()。
A.返回数据库的名称B.返回服务器端计算机的名称C.返回用户的数据库用户名D.返回服务器端计算机的ID号
A.返回数据库的名称
6.()具备多条件分支结构,计算多个条件表达式的值,并返回符合条件的一个结果表达式的值。
A.CASE函数B.IF...ELSE语句C.CASE语句D.GOTO语句
A.CASE函数
7.WHILE语句可以重复执行SQL语句或语句块,直到逻辑表达式为假。
其中,()为循环结束标记。
A.ENDB.BREAK语句C.CONTINUE语句D.GOTO语句
A.END
8.删除游标stud_cursor的命令是()。
A.CLOSEstud_cursorB.DEALLOCATEstud_cursorC.DROPstud_cursorD.DELETEstud_cursor
B.DEALLOCATEstud_cursor
9.删除自定义函数course_grade的命令是()。
A.DROPFUNCTIONcourse_gradeB.DROPcourse_gradeC.DELETEstud_cursorD.DELETEFUNCTIONcourse_grade
A.DROPFUNCTIONcourse_grade
10.阅读下列代码,判断运行结果是()。
Declare@sumint,@countint
Select@sum=0,@count=1
Label1:
Select@sum=@sum+@count
Select@count=@count+