[大二下]数据库课后习题答案


第 1 章习题参考答案

2. 选择题

(1)数据库系统与文件系统的主要区别是( )。D

A.数据库系统复杂,而文件系统简单

B.文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件

C.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量

D.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决

(2)在关系数据库系统中,当关系的模型改变时用户程序也可以不变,这是( )。B

A.数据的物理独立性 B.数据的逻辑独立性

C.数据的位置独立性 D.数据的存储独立性

(3)在数据库三级模式中,对用户所用到的那部分数据的逻辑描述是( )。A

A.外模式 B.概念模式 C.内模式 D.逻辑模式

(4)E-R 图用于描述数据库的( )。A

A.概念模型 B.数据模型 C.存储模型 D.逻辑模型

(5)以下对关系模型性质的描述,不正确的是( )。C

A.在一个关系中,每个数据项不可再分,是最基本的数据单位

B.在一个关系中,同一列数据具有相同的数据类型

C.在一个关系中,各列的顺序不可以任意排列

D.在一个关系中,不允许有相同的字段名

(6)已知两个关系:

职工(职工号,职工名,性别,职务,工资)

设备(设备号,职工号,设备名,数量)其中“职工号”和“设备号”

分别为职工关系和设备关系的关键字,则两个关系的属性中,存在一个外部关键字为( )。A

A.设备关系的“职工号” B.职工关系的“职工号”

C.设备号 D.设备号和职工号

(7)在建立表时,将年龄字段值限制在 18~40 之间,这种约束属于( )。B

A.实体完整性约束 B.用户定义完整性约束

C.参照完整性约束 D.视图完整性约束

(8)下列标识符可以作为局部变量使用的是( )。C

A.[@Myvar] B.My var C.@Myvar D.@My var

(9)Transact-SQL 支持的一种程序结构语句是( )。A

A.BEGIN…END  B.IF…THEN…ELSE

C.DO CASE  D.DO WHILE

(10)字符串常量使用( )作为定界符。A

A.单引号 B.双引号  C.方括号 D.花括号


第 第 2  章  习题解答

2 . 选择题

(1)下列( C )不是 SQL 数据库文件的后缀。

A..mdf  B..ldf C..tif D..ndf

(2)SQL Server 数据库对象中最基本的是(  B  )。

A.表和语句 B.表和视图

C.文件和文件组 D.用户和视图

(3)事务日志用于保存( C. )。

A. 程序运行过程 B. 程序的执行结果

C. 对数据的更新操作 D. 数据操作

(4)Master 数据库是 SQL Server 系统最重要的数据库,如果该数据库被损坏,SQL Server 将无法正常工作。该数据库记录了 SQL Server 系统的所有( D)。

A. 系统设置信息 B. 用户信息

C. 对数据库操作的信息 D. 系统信息

(5)SQL Server 中组成数据库的文件有( B  )种类型。

A. 2 B. 3 C. 4 D. 5

(6)分离数据库就是将数据库从(  B  )中删除,但是保持组成该数据的数据文件和事务日志文件中的数据完好无损。

A. Windows B. SQL Server C. U 盘 D. 对象资源管理器

(7)SQL Server 的数据库的收缩方法有( C )。

A. 在表设计器中修改

B.在 SQL Server 中修改数据库文件的大小

C.自动收缩数据库和手动收缩数据库

D.在操作系统中修改数据库文件的大小。

(8)下面描述错误的是( A )。

A.每个数据文件中有且只有一个主数据文件。

B.日志文件可以存在于任意文件组中。

C.主数据文件默认为 PRIMARY 文件组。

D.文件组是为了更好的实现数据库文件组织。

(9)下列文件中不属于 SQL Server 数据库文件的是( C )。

A.device_data.MDF  B.device_log.LDF

C.device_mdf.DAT  D.device_data.NDF

(10)关于 SQL Server 的数据库和文件的管理叙述错误的是(D )。

A.可以收缩数据库和数据库文件

B.可以收缩数据库

C.可以收缩数据库文件

D.只可以收缩数据库日志文件


{分页}


第 第 3  章  习题解答

2 . 选择题

(1)表设计器的“允许空”单元格用于设置该字段是否可输入空值,实际上就是创建该字段的( D )约束。

A.主键 B.外键 C.NULL D.CHECK

(2)创建一个数据表时,可以指定的约束类型中不包含( C )。

A.主键约束  B.唯一性约束  C.共享性  D.外键约束

(3)下列关于主关键字叙述正确的是( A )。

A.一个表可以没有主关键字

B.只能将一个字段定义为主关键字

C.如果一个表只有一个记录,则主关键字字段可以为空值

D.都正确

(4)下列语句用来删除表对象或表数据,其中不正确的语句是( B ) )。

A.truncate table book

B.Delete * from book

C.drop table book

D.delete from book

(5)CREATE TABLE 语句( C )。

A.必须在数据表名称中指定表所属的数据库

B.必须指明数据表的所有者

C.指定的所有者和表名称组合起来在数据库中必须唯一

D.省略数据表名称时,则自动创建一个本地临时表

(6)删除数据表的语句是( A )。

A.DROP  B.ALTER  C.UPDATE  D.DELETE

(7)数据完整性不包括( B )。

A.实体完整性 B.程序完整性 C.域完整性  D.用户自定义完整

(8)下面关于 INSERT 语句的说法正确的是( A )。

A.INSERT 一次只能插入一行的元组  B.INSERT 只能插入,不能修改

C.INSERT 可以指定要插入到哪行  D.INSERT 可以加 WHERE 条件

(9)表数据的删除语句是( A )。

A.DELETE  B.INSERT  C.UPDATE  D.ALTER

(10)SQL 数据定义语言中,表示外键约束的关键字是( B )。

A.CHECK  B.FOREIGN KEY  C.PRIMARY KEY  D.UNIQUE


第 第4  章 习题 解答

2 . 选择题

(1)在 SELECT 语句中,需显示的内容使用“*”,则表示( B )。

A.选择任何属性 B.选择所有属性

C.选择所有元组 D.选择主键

(2)查询时要去掉重复的元组,则在 SELECT 语句中使用( D )。

A.All B.UNION C.LIKE D.DISTINCT

(3)在 SELECT 语句中使用 GROUP BY C_NO 时,C_NO 必须( C )。

A.在 WHERE 子句中出现 B.在 FROM 子句出现

C.在 SELECT 子句中出现 D.在 HAVING 子句中出现

(4)使用 SELECT 语句进行分组查询时,为了去掉不满足条件的分组,应当(B )。

A.使用 WHERE 子句

B.在 GROUP BY 后面使用 HAVING 子句

C.先使用 WHERE 子句,再使用 HAVING 子句

D.先使用 HAVING 子句,再使用WHERE 子句

(5)在 T-SQL 语句中,与表达式“仓库号 Not In("wh1","wh2")”功能相同的表达式是 ( D )。

A.仓库号="wh1" And 仓库号="wh2" B.仓库号<>"wh1" Or 仓库号<>"wh2"

C.仓库号<>"wh1" Or 仓库号="wh2" D.仓库号<>"wh1" And 仓库号<>"wh2"

第 6~10 题使用如下 3 个表:

部门:部门号 Char (8),部门名 Char (12),负责人 Char (6),电话 Char (16)

职工:部门号 Char (8),职工号 C har(10),姓名 Char (8),性别 Char (2),出生日期 Datetime

工资:职工号 Char (10),基本工资 Numeric (8,2),津贴 Numeric (8,2),奖金 Numeric (8,2),扣除 Numeric (8,2)

(6)查询职工实发工资的正确命令是( C )。

A.SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资 FROM 工资

B.SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资 FROM 工资 WHERE 职工.职工号=工资.职工号

C.SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资 FROM 工资,职工 WHERE 职工.职工号=工资.职工号

D.SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资 FROM 工资 JOIN 职工 WHERE 职工.职工号=工资.职工号

(7)查询 1972 年 10 月 27日出生的职工信息的正确命令是( D )。

A.SELECT * FROM 职工 WHERE 出生日期={1972-10-27}

B.SELECT * FROM 职工 WHERE 出生日期=1972-10-27

C.SELECT * FROM 职工 WHERE 出生日期="1972-10-27"

D.SELECT * FROM 职工 WHERE 出生日期='1972-10-27'

(8)查询每个部门年龄最长者的信息,要求得到的信息包括部门名和最长者的出生日期,正确的命令是( A )。

A.SELECT 部门名,min(出生日期) FROM 部门 JOIN 职工 ON 部门.部门号=职工.部门号 GROUP BY 部门名

B.SELECT 部门名,max(出生日期) FROM 部门 JOIN 职工 ON 部门.部门号=职工.部门号 GROUP BY 部门名

C.SELECT 部门名,min(出生日期) FROM 部门 JOIN 职工 WHERE 部门.部门号=职工.部门号GROUP BY 部门名

D.SELECT 部门名,max(出生日期) FROM 部门 JOIN 职工 WHERE 部门.部门号=职工.部门号GROUP BY 部门名

(9)查询所有目前年龄在 35 岁以上(不含 35岁)的职工信息(姓名、性别和年龄),正确的命令是( C )。

A.SELECT 姓名,性别,YEAR(GETDATE())-YEAR(出生日期) AS 年龄 FROM 职工 WHERE 年龄>35

B.SELECT 姓名,性别,YEAR(GETDATE())-YEAR(出生日期) AS 年龄 FROM 职工 WHERE YEAR(出生日期)>35

C.SELECT 姓名,性别,YEAR(GETDATE())-YEAR(出生日期) AS 年龄 FROM 职工 WHERE YEAR(GETDATE())-YEAR(出生日期)>35

D.SELECT 姓名,性别,年龄=YEAR(GETDATE())-YEAR(出生日期) FROM 职工 WHERE 出生日期>35

(10)查询有 10 名以上(含 10名)职工的部门信息(部门名和职工人数),并按职工人数降序排序。正确的命令是( D )。

A.SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工 WHERE 部门.部门号=职工.部门号 GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY COUNT(职工号) ASC

B.SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工 WHERE 部门.部门号=职工.部门号 GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY St_Info.St_ID DESC

C.SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工 WHERE 部门.部门号=职工.部门号 GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY 职工人数 ASC

D.SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工 WHERE 部门.部门号=职工.部门号 GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY 职工人数 DESC


{分页}


第 第 5  章  习题解答

2.选择题

(1)为数据表创建索引的目的是( A )。

A.提高查询的检索性能 B.节省存储空间

C.便于管理 D.归类

(2)索引是对数据库表中( C )字段的值进行排序。

A.一个  B.多个 C.一个或多个 D.零个

(3)下列( C )类数据不适合创建索引。

A.经常被查询搜索的列 B.主键的列

C.包含太多 NULL 值的列  D.表很大

(4)有表 student(学号, 姓名, 性别, 身份证号, 出生日期, 所在系号),在此表上使用( A )语句能创建视图 vst。

A.CREATE VIEW vst AS SELECT * FROM student

B.CREATE VIEW vst ON SELECT * FROM student

C.CREATE VIEW AS SELECT * FROM student

D.CREATE TABLE vst AS SELECT * FROM student

(5)在一个数据表上,最多可以定义( A )个聚集索引,可以有多个非聚集索引。

A.1 B.2 C.3 D.4

(6)下面关于索引的描述不正确的是( B )。

A.索引是一个指向表中数据的指针

B.索引是在元组上建立的一种数据库对象

C.索引的建立和删除对表中的数据毫无影响

D.表被删除时将同时删除在其上建立的索引

(7)SQL 的视图是( C )中导出的。

A.基本表 B.视图 C.基本表或视图 D.数据库

(8)在视图上不能完成的操作是( C )。

A.更新视图数据  B.查询

C.在视图上定义新的基本表 D.在视图上定义新视图

(9)关于数据库视图,下列说法正确的是( A )。

A.视图可以提高数据的操作性能

B.定义视图的语句可以是任何数据操作语句

C.视图可以提供一定程度的数据独立性

D.视图的数据一般是物理存储的

(10)在下列关于视图的叙述中,正确的是( A )。

A.当某一视图被删除后,由该视图导出的其他视图也将被自动删除

B.若导出某视图的基本表被删除了,该视图不受任何影响

C.视图一旦建立,就不能被删除

D.当修改某一视图时,导出该视图的基本表也随之被修改

第 第 6  章  习题解答

2.选择题

(1)( C )允许用户定义一组操作,这些操作通过对指定的表数据进行删除、插入和更新命令来执行或触发。

A.存储过程 B.视图 C.触发器 D.索引

(2)SQL Server 为每个触发器创建了两个临时表,它们是(B )。

A.Updated 和 Deleted B.Inserted 和 Deleted

C.Inserted 和 Updated D.Seleted 和 Inserted

(3)SQL Server 中,存储过程由一组预先定义并被( C )的 T-SQL 语句组成。

A.编写 B.解释 C.编译  D.保存

(4)下列可以修改存储过程的名称的系统存储过程是( D )。

A.xp_spaceused B.sp_depends  C.sp_help  D.sp_rename

(5)以下语句创建的触发器 ABC 是当对表 T 进行( D )操作时触发。

CREATE TRIGGER ABC

ON 表 T

FOR INSERT, UPDATE, DELETE

AS ……

A.只是修改 B.只是插入 C.只是删除 D.修改,插入,删除

(6)以下( C )不是存储过程的优点。

A.实现模块化编程,能被多个用户共享和重用

B.可以加快程序的运行速度

C.可以增加网络的流量

D.可以提高数据库的安全性

(7)以下( A )操作不是触发触发器的操作。

A.SELECT B.INSERT C.DELETE D.UPDATE

(8)下面关于触发器的描述,错误的是( A )。

A.触发器是一种特殊的存储过程,用户可以直接调用

B.触发器表和 deleted 表没有共同记录

C.触发器可以用来定义比 CHECK 约束更复杂的规则

D.删除触发器可以使用 DROP TRIGGER 命令,也可以使用对象资源管理器

(9)关于 SQL Server 中的存储过程,下列说法中正确的是( D )。

A.不能有输入参数  B.没有返回值

C.可以自动被执行  D.可以按存储过程名称执行

(10)对于下面的存储过程:

CREATE PROCEDURE Mysp1 @p Int

AS

SELECT St_name, Age FROM Students WHERE Age=@p

调用这个存储过程查询年龄为 20 岁的学生的正确方法是( B )。

A.EXEC Mysp1 @p='20' B.EXEC Mysp1 @p=20

C.EXEC Mysp1='20' D.EXEC Mysp1=20


{分页}


第 第 7 7  章 数据转换

2.选择题

(1)SQL Server 2008 提供了 3 种不同的备份类型,它们是(B )。

A. “完整”、“差异”和“文件组” B. “完整”、“差异”和“事务日志”

C. “完整”、“差异”和“数据库” D. “完整”、“差异”和“简单”

(2)SQL Server 2008 中下列不是还原模式的是( D)。

A.简单还原模式 B. 完整还原模式

C. 大容量日志还原模式  D. 磁盘还原

(3)关于 SQL Server 的脚本,叙述错误的是( B )。

A.SQL 脚本是存储在文件中的一系列 SQL 语句

B.SQL 脚本的扩展名为.txt

C.数据库可以生成为脚本文件,在不同的计算机之间传送

D.数据表可以生成为脚本文件。

(4)执行一个创建数据表的脚本文件,可以( A )。

A.生成一个不包含数据的数据表  B.生成一个数据表并自动添加数据

C.生成一个数据库  D.生成一个日志文件

(5)脚本文件的扩展名为(A )。

A.sql  B.ndf  C.mdf  D.ldf

(6)假设一系统原来使用 Access 数据库,现要使用 sql server 数据库,采用(D)方法可以完成两个数据库之间的数据转换工作。

A. SQL Server 的附加数据库功能

B. SQL Server 的还原数据库功能

C. 在 SQL Server 中可直接打开 Access 数据库,另存即可

D. SQL Server 的导入/导出功能

(7)对于不同的数据库,若要让 SQL Server 能够识别和使用,就必须进行数据源的( B )。

A.添加 B.转换  C.拷贝  D.编辑

(8)下面( C )文件不能与 SQL Server 数据库进行导入和导出操作。

A.文本文件 B.Excel文件 C.Word 文件 D.Access 数据库

(9)关于导入与导出数据时,下面说法错误的是(D )。

A.可以使用导入/导出向导导入和导出数据

B.可以使用对象资源管理器导入和导出数据

C.可以保存导入、导出任务,以后执行

D.导出数据后,原有数据被删除

(10)下列不属于备份策略考虑的是(D )。

A.备份的内容  B.备份的时间  C.备份的方式  D.备份的设备


第 第 8 8  章 习题解答

2 .选 择题

(1)当采用 Windows验证方式登录时,只要用户通过 Windows 用户账户验证,就可( A )到 SQL Server 2008 数据库服务器。

A.连接 B.集成 C.控制 D.转换

(2)SQL Server 2008 中的视图提高了数据库系统的( D )。

A.完整性  B.并发控制 C.隔离性  D.安全性

(3)使用系统管理员登录账户 sa 时,以下操作不正确的是( C )。

A.虽然 sa 是内置的系统管理员登录账户,但在日常管理中最好不要使用 sa 进行登录

B.只有当其他系统管理员不可用或忘记了密码,无法登录到 SQL Server 2008 时,才使用 sa 这个特殊的登录账户

C.最好总是使用 sa 账户登录

D.使系统管理员成为 sysadmin 固定服务器角色的成员,并使用各自的登录账户来登录

(4)在数据库的安全性控制中,授权的数据对象的( B ),授权子系统就越灵活。

A.范围越小 B.约束越细致  C.范围越大 D.约束范围大

(5)在“连接”组中有两种连接认证方式,其中在( B )方式下,需要客户端应用程序连接时提供登录需要的用户标识和密码。

A.Windows 身份验证 B.SQL Server 2008 身份验证

C.以超级用户身份登录 D.以其他方式登录

(6)为了保证数据库应用系统正常运行,数据库管理员在日常工作中需要对数据库进行维护。下列一般不属于数据库管理员日常维护工作的是( A )。

A.数据内容的一致性维护 B.数据库备份与恢复

C.数据库安全性维护 D.数据库存储空间管理

(7)SQL Server 2008 提供了很多预定义的角色,下述关于 public 角色说法正确的是( D ) 。

A.它是系统提供的服务器级的角色,管理员可以在其中添加和删除成员

B.它是系统提供的数据库级的角色,管理员可以在其中添加和删除成员

C.它是系统提供的服务器级的角色,管理员可以对其进行授权

D.它是系统提供的数据库级的角色,管理员可以对其进行授权

(8)dbo 代表的是( A )。

A.数据库拥有者 B.用户 C.系统管理员  D.系统分析员

(9)当采用 Windows NT 验证方式登录时,只要用户通过了 Windows 用户账户验证,就可以( A )到 SQL Server 2008 数据库服务器。

A.连接 B.集成 C.控制 D.转换

(9)角色是数据库管理系统为方便权限管理而设置的管理单位。下列( C)不属于 SQL Server 中角色的类型。

A 固定角色

B 用户定义数据库角色

C 系统角色

D 应用程序角色

(10)数据库的权限是指用户对数据库中对象的使用及操作的权利。SQL Server 2008中的权限不包括( C )。

A.对象权限 B.语句权限 C.文件权限 D.隐含权限


推荐您阅读更多有关于“”的文章

你可能感兴趣的:([大二下]数据库课后习题答案)