1 / 23
文档名称:

数据库笔试题.pdf

格式:pdf   大小:2,570KB   页数:23页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据库笔试题.pdf

上传人:闰土 2023/3/8 文件大小:2.51 MB

下载得到文件列表

数据库笔试题.pdf

相关文档

文档介绍

文档介绍:该【数据库笔试题 】是由【闰土】上传分享,文档一共【23】页,该文档可以免费在线阅读,需要了解更多关于【数据库笔试题 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:.
数据库笔试题:.
软件--数据库--Ⅰ级
在数据库系统模型中,哪三种模型是目前使用的,
题目1
其中最具优势的是哪种模型?
参考
层次模型、网状模型、关系模型;关系模型。
答案
关系数据库的专用语言是什么,它可以对数据中的
题目2数据进行数据检索及哪些操作,对检索出来的数据
可以进行哪些操作?
参考SQL;数据更新、数据删除;数据复制、数据排序、
答案数据连接。
如果想向一个表做插入、更新、删除操作的时能自动
题目3
执行另一SQL操作,用什么来实现?
参考
触发器
答案
在主键与外键的相互关系描述中下面哪个操作
1、
不破坏参照完整性
题目41)、主键值存在,删除外键值。
2)、外键值存在,删除主键值。
3)、主键值不存在,插入外键值。
参考
第一个。
答案
题目5如何避免数据库死锁?
参考预先规定一个封锁顺序,所有的事务都必须按这个
答案顺序对数据加锁。
题目6请列举出ADO编程模型中4种以上对象的名称。
参考连接、命令、参数、记录集、字段、错误、属性、
答案集合、事件(四个即可)
题目7写出一个连接查询的SQL语句。
参考select*fromtablename1,tablename2where
=
题目8写出一使用嵌套查询的SQL语句。
参考select*
答案()
题目9编写一游标操作示例,从表中检索出某一列数据。
2:.
3:.
4:.
参考
答案
题目
1)
10
参考
答案
题目
11
参考
答案
题目
12
参考
答案
题目什么是存储过程,怎样写存储过程?存储过程与应
13用程序有什么不同
(1)存储过程可以使得对数据库的管理、以及显
示关于数据库及其用户信息的工作容易得多。
存储过程是SQL语句和可选控制流语句的预
编译集合,以一个名称存储并作为一个单元处
理。存储过程存储在数据库内,可由应用程序
通过一个调用执行,而且允许用户声明变量、
参考
有条件执行以及其它强大的编程功能。
答案
(2)存储过程可包含程序流、逻辑以及对数据库
的查询。它们可以接受参数、输出参数、返回
单个或多个结果集以及返回值。
(3)可以出于任何使用SQL语句的目的来使用
存储过程,它具有以下优点:
可以在单个存储过程中执行一系列SQL语句。
5:.
可以从自己的存储过程内引用其它存储过程,
这可以简化一系列复杂语句。
存储过程在创建时即在服务器上进行编译,所
以执行起来比单个SQL语句快。
数据访问的公共接口
代码的模块化和重用
通过数据隔离实现安全性
独立于外部编程语言
(4)存储过程的功能取决于数据库所提供的功
能。
(5)创建存储过程
可使用Transact-SQL语句CREATE
PROCEDURE创建存储过程。创建存储过程前,请考
虑下列事项:
不能将CREATEPROCEDURE语句与其它SQL
语句组合到单个批处理中。
创建存储过程的权限默认属于数据库所有者,
该所有者可将此权限授予其他用户。
存储过程是数据库对象,其名称必须遵守标识
符规则。
只能在当前数据库中创建存储过程。
创建存储过程时,应指定:
6:.
所有输入参数和向调用过程或批处理返回的输
出参数。
执行数据库操作(包括调用其它过程)的编程
语句。
返回至调用过程或批处理以表明成功或失败(以及
失败原因)的状态值。
题目
描述tablespace和datafile之间的关系
14
tablespace是逻辑上的概念,datafile是物理上的
参考概念。
答案
一个tablespace可以由多个datafile组成,但
一个datafile不能跨越多个tablespace。
题目
绑定变量是什么?绑定变量有什么优缺点?
15
通俗的说,绑定变量就是变量的一个占位符,使用
绑定变量可以减少对SQL语句的解析。
参考
优点:;
答案
POOL的占用
缺点:编码相对复杂,SQL语句不能动态拼装。
题目
SQL语言和PL/SQL的区别
16
参考SQL是非过程化语言,PL/SQL是一种过程化语言,
答案
能够象C语言那样进行过程控制。
题目以下数据库哪个不能安装在UNIX操作系统
17
ASqlserverBOracleCDB2DSybase
参考A
7:.
答案
题目
列出你知道的oracle索引类型
18
参考
B树索引、位图索引、函数索引、反序索引
答案
题目
在ORACEL中,有哪些类型的SQL语句,请具体举例
19
DATAREETRIVE:数据查询---SELECT
DML:数据操作语言---INSERT
UPDATEDELETEMERGE
参考DDL:数据定义语言---CREATEALTER
答案
DROPRENAMETRUNCATE
DCL:数据控制语言---GRANTREVOKE
TRANSACTIONCONTROL:事物控制---COMMIT
ROLLACKSAVEPOINT
题目在ORACEL中,有几种约束来保证数据的完整一致,
20
请具体列出
---不能为空
---主键
参考
3FOREIGNKEY---外键
答案
4UNIQUE---唯一
5CHECK---检查
题目请列出ORACLE数据库中常用的几种数据库对象(至
21
少8种)
参考

答案
8:.



PARTITION表分区12INDEXPARTITION索引分区

列16MATERIALIZEDVIEW物化视图
软件--数据库--Ⅱ级
题目1为什么要使用存储过程,有哪些好处?
存储过程是集中存储在数据库服务器中的预
先定义且已经编译好的事务。存储过程SQL语句和
流程控制语句组成。
存储过程是预编译过的,这就意味着它与普通
的SQL语句或批处理的SQL语句不同,当首次运行一
个存储过程时,SQLServer的查询处理器对其进行
分析,在排除了语法错误之后形成存储在系统中的
可执行方案。由于查询处理的大部分工作已经完
成,所以存储过程执行速度很快。
存储过程和待处理的数据都放在同一台运行
参考
数据库服务器的计算机上,使用存储过程查询当地
答案
的数据,效率自然很高。
存储过程一般多由Client端通过存储过程的
名字进行调用,即跨网传送的只是存储过程的名字
及少量的参数(如果有的话),而不是构成存储过程
的许多SQL语句,因此可以减少网络传输量,加快系
统响应速度。
存储过程还有着如同C语言子函数那样的被调
用和返回值的方便特性。
存储过程大大增强了SQL语言的功能、效率和
灵活性,所以要使用存储过程。
题目2请说明触发器的主要作用和分类。
参考
保证数据的一致性。Deleted,inserted,updated
答案
题目3unique约束和primarykey约束有何不同?
9:.

参考

答案
空。
题目4存储过程为什么执行较快?
参考
已编译好放在服务器端。
答案
题目5为什么要使用视图?
使用视图是为了安全性和一致性以及屏蔽复杂性。
安全性:用户只拥有操作视图的权限而无操作表的
权限,可以使一些用户不该操作的数据得到保护;
参考
一致性:当基表发生变化时,视图也进行修改,保
答案
持一致。
屏蔽复杂性:视图可以使某些复杂的查询操作以简
单的形式将结果表现出来。
在VISUALC++下的数据库访问接口有哪些,请列举
题目6
出3种以上。
参考ODBCAPI、EmbeddedSQL、ADO、RDO、DAO、OLEDB、
答案DMO等。
聚类索引(clustered)、非聚类索引(noclustered)
题目7
的区别何在?
在聚类索引中,表中数据行的物理顺序与索引中键
参考
行的顺序一致,非聚类索引表中数据行并不是这样
答案
排列顺序。
在何种情况下应该避免使用系统管理员登录数据
题目8
库?
参考在任何情况下尽量避免,在安装好数据库后就应重
答案新建立一个登录用户,保证访问安全。
触发器是存储过程吗?请写出一个触发器的简单
题目9
示例。
触发器是一种特殊的存储过程。
Createtriggertrigger_name
参考
ontable_name
答案
for{INSERT,DELETE,UPDATE}
asSQL语句
有两个表:学生表(学号、姓名)和选修课成绩表
题目(学号、成绩)
10试编写一SQL语句,从选修课成绩表中删除学号在
学生表中不存在的记录。
10:.
参考deletefrom选修课成绩表where学号notin
答案(select学号from学生表)。
题目VisualFoxPro(VFP)对xBase数据库作了许多改
11变,主要包括Ⅰ.VFP扩充了xBase关于一个数据
库实质上是一个二维表的数据库概念Ⅱ.VFP提供
了数据字典Ⅲ.VFP提供了存储过程、视图、触发
器等A)Ⅰ和ⅡB)Ⅱ和ⅢC)Ⅰ和ⅢD)都是
参考
D
答案
题目下面程序段的时间复杂度是:
12s=0;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
s+=B[i][j];
sum=s;
参考
O(n*n)
答案
题目在一个单链表中,若在指针q所指结点之后插入节
13点s,则执行:
=q->next;
答案q->next=&s;
题目设有下列程序段:
14intarr[]={6,7,8,9,10};
int*ptr;
ptr=arr;
*(ptr+2)+=2;
printf("%d,%d\n",*ptr,*(ptr+2));
请选择,程序段的输出结果为:
A)8,10B)6,8C)7,9
D)6,10
参考
D
答案
题目在栈顶指针为HS的链栈中,编写一个计算该链栈
15中节点个数的函数。
参考参考答案:
答案intcount(node*HS)
11:.
{
intn=0;
node*p;
p=HS;
while(p!=NULL)
{
n++;
p=p->next;
}
return(n);
}
题目
Oracle数据库中是否大小写敏感?
16
1有些命令敏感,如
TheCASCADEandRESTRICTclausesintheDROP
TABLE,DROPVIEW,andREVOKEstatements
参考
答案2有些命令视具体的驱动器不同而大小写敏感情
况不同
如通过某些桥式驱动程序访问时大小写敏感,
如删除表记录时在sqlplus等工具大小写不敏
感,而在jdbc中大小写敏感,
题目在ORACLE中如何用转换函数进行16进制和10进制
17
数的互转?
16进制转换为10进制:to_number(’19f’,’xxx’)
参考
答案
10进制转换为16进制:to_char(123,’xxx’)
题目简单描述ORACLE数据库
18
tablespace/segment/extent/block之间的关系
参考这4个都是逻辑上的概念。block是最小的储存单
答案
元,多个block组成extent,多个extent组成
12:.
segment,多个segment组成tablespace。
题目
如何使用CBO,CBO与RULE的区别?
19
通过初始化参数
optimizer_mode=CHOOSE/FIRST_ROWS/ALL_ROWS使
用CBO
CBO根据表和索引的统计信息、
参考
答案
db_file_multiblock_read_count、CPU并行能力等
因素决定访问路径;
RULE(RBO)根据表的索引及字句顺序决定访问路
径。
Oracle数据库中哪个内存区域存放最近使用过的
题目
20
数据库块儿
参考
数据库缓冲区
答案
题目
请列出oracle数据库的主要后台进程
21
参考数据库写进程、日志写进程、系统监控进程、进程
答案
监控进程、检查点进程
题目ORACLE数据库内置函数union和unionall有区别
22
吗?如果有请简述一下。
,
只保留一条,在执行时会产生排序,速度相对较慢,
参考
答案

单相加,在执行时会不产生排序,速度相对较快,
13:.
所耗资源相对较少
在ORACLE数据库,有一张表有10万条记录,大小为
题目
10M,通过DELETE命令把记录全部删除,
23
请问删除后标的大小为多少?为什么?
表大小仍为10M,因为DELETE命令虽然把表的记录
参考
都删除了,但表高水位标志(HWM)并没有
答案
降下来,所以表的大小不变。
DECLARE
BEGIN
FORIIN1…1000000LOOP
INSERTINTOEMP(ID,
NAME,
AGE,
DEPT
题目)VALUE
24
(I+1,
‘TEST’,
I+1,
‘TEST’
);
COMMIT;
ENDLOOP;
END;
14:.
请问在ORACLE数据库此段代码是否合理,如果不合
理请指出是哪里,给出原因并修改代码
不合理,不应该每循环一次都进行提交(COMMIT),
原因:(COMMIT),会导致日志文件的
频繁物理写入,容易产生等待
(blockcleanout),消耗
大量的CPU资源
修改后的代码:
DECLARE
JNUMBER;
BEGIN
FORIIN1…1000000LOOP
参考
INSERTINTOEMP(ID,
答案
NAME,
AGE,
DEPT
)VALUE
(I+1,
‘TEST’,
I+1,
‘TEST’
);
J:=J+1;
15:.
IFJ=5000THEN---数量不一定是5000
COMMIT;
ENDIF;
J:=0;
ENDLOOP;
END;
软件--数据库--Ⅲ级
题目1在数据库系统中,规则和约束有何区别?
规则和约束都是用来对表的列的数据进行限制的,
参考约束是首选的、标准的方式,表的每一列仅可以有
答案一个规则,但可以有多个约束,约束是表的一部分,
和表一起创建,而规则可以在表创建之前创建。
在数据库中,怎样确定用户是否具有访问视图和执
题目2
行存储过程的权限?
参考用户要访问视图和执行存储过程,必须拥有访问视
答案图的基表或存储过程所引用的对象的权限。
在大型数据库系统中,有几种方式可以实现数据备
题目3
份/恢复,它们是什么?(至少两种)
3种。,即使用Dump备份数
据库和Load恢复数据库;,
参考
如BCP,对BCP有命令行方式、Bulk-Library/C编
答案
程和DB-Library/C编程等方式。
问接口编程实现。
什么样的表满足第二范式?什么样的表满足第三
题目4
范式?
满足第二范式的表,表中任一非主键列都依赖于主
参考键列;满足第三范式的表,在满足第二范式的
答案基础上,表中任一非主键列都不依赖于另一非
主键列;
题目5角色权限与用户权限有什么区别?
可使用grant授权各类角色,包括系统和用户自定
参考义角色。角色权限特殊性在于,角色权限驾凌于用
答案户权限之上:如用户A具有角色B,角色B有权
限执行存储过程,当用户A的执行该存储过程的权
16:.
限被取消后,通过角色B,用户仍可执行该存储过
程。
数据库同步时,做好配置后,数据库间传递的是什
题目6
么?
参考数据库同步时,做好配置后,数据库间传递的是:
答案日志
你正在创建一个数据库,预计对它会有频繁的
INSERT、UPDATE、DELETE操作,你将要怎样调整事
题目7
物日志默认的大小?如果主要用于查询,要怎样处
理?
应该考虑手工增加事务日志的大小。主要用于查询
参考
的数据库通常不需要非常大的事务日志,应考虑将
答案
事务日志的大小降到数据库总大小的10%。
假设有两个表:
class(classid,classname);
score(studentid,
题目8classid,sumscores)
其中第一个表存放班级信息,第二个存放学生的
总成绩,试编写一个SQL语句,查询出学生总成
绩的平均分超过80分的班级名称。

(
答案scoregroupby()having
avg()>80)
题目9为用户提供什么样的备份恢复策略比较好?
参考应尽量提供自动备份功能,在用户要求的时间范围
答案自动备份数据。
题目若使用ORACLE系统开发一个数据库应用系统,在
10进行数据库模式设计时,在如下所列出的软件中,
应选用A)ORACLEDeveloper/2000B)ORACLE
Designer/2000C)ORACLEPL/SQLD)ORACLERDBMS
参考B
答案
题目谈谈你对3NF(三范式)的理解,为什么数据库设
11计最少要满足3NF的要求?
当数据库按第三范式设计,就没有数据冗余,数据
参考
更新只需在一个地点进行,能够最大的保证数据的
答案
完整性、一致性,提高数据库的性能和效率。
题目Oracle数据库中是否大小写敏感?
17:.
12
1有些命令敏感,如
TheCASCADEandRESTRICTclausesintheDROP
TABLE,DROPVIEW,andREVOKEstatements
参考
答案2有些命令视具体的驱动器不同而大小写敏感情
况不同
如通过某些桥式驱动程序访问时大小写敏感,
如删除表记录时在sqlplus等工具大小写不敏
感,而在jdbc中大小写敏感,
题目存储量1GB(GigaByte)大约等于,A)1000KBB)
13100KBC)1000000KBD)100000KB
答案C
以下关于链式存储结构的叙述中哪一条是不正确
的?A)结点除自身信息外还包括指针域,因此存储
题目密度小于顺序存储结构B)逻辑上相邻的结点物
14理上不必邻接C)可以通过计算直接确定第i个结
点的存储地址D)插入、删除运算操作方便,不必
移动结点
参考
C
答案
在顺序表(3,6,8,10,12,15,16,18,21,25,30)中,
题目
用二分法查找关键码值11,所需的关键码比较次
15
数为A)2B)3C)4D)5
参考
C
答案
设有关系R,S和T如下。关系T是由关系R和S经
过哪种操作得到的?
R
┌─┬─┬─┐ST
│A│B│C│┌─┬─┬─┐┌─┬─┬─
题目

16
├─┼─┼─┤│A│B│C││A│B│C

│1│2│3│├─┼─┼─┤├─┼─┼─

│4│1│6││4│1│6││1│2│3
18:.

│3│2│4││2│7│1││3│2│4

└─┴─┴─┘└─┴─┴─┘└─┴─┴─

A)R∪SB)R-SC)R×SD)R∞S
参考
B
答案
以下关于广义表的叙述中,正确的是A)广义表是0
题目个或多个单元素或子表组成的有限序列B)广义表
17至少有一个元素是子表C)广义表不可以是自身
的子表D)广义表不能为空表
参考
A
答案
如果一棵二叉树结点的前序序列是A、B、C,后序序
题目列是C、B、A,则该二叉树结点的对称序序列A)必
18为A、B、CB)必为A、C、BC)必为B、C、AD)不
能确定
参考
D
答案
题目设有关系R(S,D,M),其函数依赖集F={S→D,D→M}。
19则关系R至多满足A)1NFB)2NFC)3NFD)BCNF
参考
B
答案
题目
ORACLE控制文件坏了一个后如何启动数据库?
20
参考在pfile中删除该控制文件的设置或将另一个好的
答案控制文件覆盖到坏的控制文件,重启数据库。
题目
Oracle系统进程主要有哪些?作用是什么?
21
(DBW0)负责将更改的数据从数
据库缓冲区高速缓存写入数据文件
(LGWR)将重做日志缓冲区中注
参考册的更改写入重做日志文件
(SMON)检查数据库的一致性如
有必要还会在数据库打开时启动数据库的恢复
(PMON)负责在一个Oracle进程
失败时清理资源
19:.
(CKPT)负责在每当缓冲区高速缓
存中的更改永久地记录在数据库中时更新控制文
件和数据文件中的数据库状态信息
题目
ORACLE备份有哪几类?简要描述一下。
22
逻辑备份和物理备份。
Oracle备份包括逻辑备份和物理备份。

(1)输出(Export)输出可以是整个数据库、指
定用户或指定表。
(2)输入(Import)输入将输出建立的二进制转
储文件读入并执行其命令。

物理备份包含拷贝构成数据库的文件而不管其逻
辑内容。
Oracle支持两种不同类型的物理文件备份:脱机备
份(offlinebackup)和联机备份(onlinebackup)。
(1)脱机备份
参考
脱机备份用在当数据库已正常关闭,数据库处于
答案
"offline"时,要备份下列文件:
所有数据文件
所有控制文件
所有联机日志
(可选的)
2)联机备份
联机备份可用来备份任何运作在ARCHIVELOG方式
下的数据库。在这种方式下,联机日志被归档,在
数据库内部建立一个所有作业的完整记录。
联机备份过程具备强有力的功能。第一,提供了完
全的时间点(point-in-time)恢复。第二,在文
件系统备份时允许数据库保持打开状态。
题目简要描述oracle专有服务器模式下PGA(程序全局
23区)的构成
参考
排序区、会话信息、光标状态、堆栈空间
答案
题目请简述oracle数据库中检查点(checkpoint)的
24含义
当oracle后台写进程将所有更改的数据库缓冲区
参考
(包括提交和未提交的数据)写到数据库文件时,这
答案
个事件称为检查点
20:.
题目在ORACLE数据库中,插入(INSERT)数据时是会
25产生锁及相应得等待事件吗,请具体说明。
会产生锁,表级锁(TM)为:RowExclusive(行排
他锁)行级级锁(TX)为:Exclusive(排他锁)
参考
当不同会话(SESSION)插入同一数值到同一字段,
答案
此字段是主键或有唯一(UNIQUE)限制时,则会产
生等待(阻塞)
题目在ORACLE数据库中,如何用SQL语句停止一个会
26话进程(SESSION)
参考
ALTERSYSTEMKILLSESSION‘sid,serial#’
答案
在ORACLE数据库中,有一个表EMP(IDNUMBER,NAME
VARCHAR2(10))
其中ID<100的记录为1000条
100<=ID<=500的记录为2000条
题目
ID>500的记录为3000条
27
请用一个sql语句(不包括子查询模式)用以下的格
式输出:
CLOUMN1CLOUMN2CLOUMN3
100020003000
SELECTSUM(CASE
WHENID<100THEN
1
ELSE
0
END
)CLOUMN1,
SUM(CASE
参考
WHEN100<=IDANDID<=500THEN
答案
1
ELSE
0
END
)CLOUMN2,
SUM(CASE
WHENID>7782THEN
1
21:.
ELSE
0
END
)CLOUMN3
FROMEMP
22:Thedocu