21年数据库考试复习题目
Posted 汐汐如梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了21年数据库考试复习题目相关的知识,希望对你有一定的参考价值。
下列关于索引的描述哪一项是不正确的?( )
A.
表是否具有索引不会影响到所使用的sql的编写形式
B.
为表创建索引后,所有的查询操作都会使用索引
C.
为表创建索引后,可以提高查询的执行速度
D.
为表创建索引后,Oracle优化器将根据具体情况决定是否采用索引
参考答案:
B
在Oracle数据库中,()用户模式存储数据字典表和视图对象。
A.
SYSTEM
B.
SYS
C.
SCOTT
D.
YSDBA
参考答案:
B
下面对数据文件的叙述中,正确的是( )
A.
一个表空间只能对应一个数据文件
B.
一个数据文件可以对应多个表空间
C.
一个表空间可以对应多个数据文件
D.
数据文件存储了数据库中的所有日志信息
参考答案:
C
PL/SQL块中不能直接使用的SQL命令是()。
A.
SELECT
B.
INSERT
C.
UPDATE
D.
DROP
参考答案:
D
事务对DB的修改,应该在数据库中留下痕迹,永不消逝。这个性质称为事务的
A.
持久性
B.
隔离性
C.
一致性
D.
原子性
参考答案:
A
下列关于约束与索引的说法中哪一项是不正确的?( )
A.
在字段上定义PRIMARY KEY约束时会自动创建B树惟一索引
B.
在字段上定义UNIQUE约束时会自动创建B树惟一索引
C.
在默认的情况下,禁用约束会删除对应的索引,而激活约束会自动重建相应的索引
D.
在定义FOREIGN KEY 约束时会创建B树唯一索引
参考答案:
D
下面哪种后台进程用于将数据缓冲区中的数据写入数据文件?( )
A.
LGWR
B.
DBWn
C.
CKPT
D.
ARCn
参考答案:
B
Oracle数据库在运行时,系统自动将所有运行情况(包括日志数据)记录在哪个数据字典视图中( )。
A.
V
S
G
A
B
.
V
SGA B. V
SGAB.VROWCACHE
C.
V
S
E
S
S
I
O
N
W
A
I
T
D
.
V
SESSION_WAIT D. V
SESSIONWAITD.VSYSSTAT
参考答案:
D
在联接视图中,当( )时,该基表被称为键保留表。
A.
基表的主键不是结果集的主键
B.
基表的主键是结果集的主键
C.
基表的主键是结果集的外键
D.
基表的主键不是结果集的外键
参考答案:
B
10.下列哪个聚合函数可以把一个列中的所有值相加求和?( )
A.
MAX函数
B.
MIN函数
C.
COUNT函数
D.
SUM函数
参考答案:
A
-
使用如下语句创建一个视图: CREATE VIEW test view AS
SELECT stu.stuname , stu.stuage + 1 newage , cla.claname
FROM student stu LEFT JOIN class cla ON stu.claid = cla.claid; 请问test view视图中哪些列是可更新的?( )
A.
stuname
B.
stuname, newage
C.
stuname, claname
D.
stuname, newage, claname
参考答案:
A -
用符号"->"表示组成关系,下面哪一个组成关系正确表示了Oracle数据库的逻辑存储结构( )
A.
块->段->区->表空间->数据库
B.
块->区->段->表空间->数据库
C.
块->表空间->区->段->数据库
D.
块->段->表空间->区->数据库
参考答案:
B -
下面对Oracle的逻辑存储结构叙述中,正确的是( )
A.
一个数据库实例由多个表空间组成
B.
一个段由多个区组成
C.
一个区由多个段组成
D.
一个块由多个区组成
参考答案:
B -
如果某个用户仅仅具有scott.emp表上的SELECT与UPDATE权限,则下面对该用户所能执行的操作叙述正确的是( )
A.
该用户能查询scott.emp表中的记录
B.
该用户能修改scott.Emp表中的记录
C.
该用户能删除scott.emp表中的记录
D.
该用户无法执行任何操作
参考答案:
A -
要更新游标结果集中的当前行,应使用()子句。
A.
WHERE CURRENT OF
B.
FOR UPDATE
C.
FOR DELETE
D.
FOR MODIFY
参考答案:
A -
下列哪一个后台进程和对应的数据库组件能够保证即使用户对数据库所做的修改没有写入数据文件,也不会发生修改内容丢失的情况( )
A.
DBWn与数据库缓冲区
B.
LGWR与重做日志文件
C.
CKPT与控制文件
D.
ARCn与归档日志文件
参考答案:
B -
在WINDOWS平台上Oracle服务器是以哪种形式运行的( )
A.
单进程,多线程
B.
多进程,多线程
C.
多进程,每个进程为单线程
D.
以上所述都不正确
参考答案:
A -
在Oracle中,有一个教师表teacher的结构如下: ID NUMBER(5)
NAME VARCHAR2(25) EMAIL VARCHAR2(50)
下面哪个语句显示没有Email地址的教师姓名()。
A.
SELECT name FROM teacher WHERE email = NULL;
B.
SELECT name FROM teacher WHERE email <> NULL;
C.
SELECT name FROM teacher WHERE email IS NULL;
D.
SELECT name FROM teacher WHERE email IS NOT NULL;
参考答案:
C -
删除日志文件组5中的日志文件E:\\orcl\\datafile\\redo05.log,其中正确的语句是
( )
A.
ALTER DATABASE DROP LOGFILE „E:\\orcl\\datafile\\redo05.log„ ;
B.
ALTER DATABASE DROP LOGFILE GROUP 5 „E:\\orcl\\datafile\\redo05.log„ ;
C.
ALTER DATABASE DROP LOGFILE MEMBER „ E:\\orcl\\datafile\\redo05.log „
D.
ALTER GROUP 5 DROP LOGFILE „ E:\\orcl\\datafile\\redo05.log‟„
参考答案:
C -
按所使用的数据模型来分,数据库可分为( )三种类型。
A.
层次、关系和网状
B.
网状、环状和链状
C.
大型、中型和小型
D.
独享、共享和分时
参考答案:
A -
以零作除数时会引发()异常。
A.
VALUE_ERROR
B.
ZERO_DIVIDE
C.
STORAGE_ERROR
D.
SELF_IS_NULL
参考答案:
B -
根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面“部门”关系中,因哪个属性而使它不满足第一范式?
部门(部门号,部门名,部门成员,部门总经理)
A.
部门总经理
B.
部门成员
C.
部门名
D.
部门号
参考答案:
B -
规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及( )缺陷。
A.
数据的不一致性
B.
结构不合理
C.
冗余度大
D.
数据丢失
参考答案:
C -
在警告文件中出现如下错误提示:
ORA-01650: Unable to Extend Rollback Segment x by String in Tablespace x 请问是什么原因导致( )
A.
在临时表空间中找不到满足要求的连续空间
B.
在表的扩展中已经超过了允许的最大值。
C.
在表空间中没有没有足够的连续空间用于扩展。
D.
没有足够的连续空间用于回滚段的扩展。.
参考答案:
D -
下列关于OEM的说法中正确的有( )。
A.
从理论上讲,OEM的运行必须具备外部卓越的制造能力和自身优秀的无形资产
B.
OEM方式实际是一种强强联合的方式,合作双方是优势互补
C.
OEM方式节省固定资产投资,使大量的资本投资用于更好的资源配置,使项目的财务成本得以降低
D.
制造方必须具有较强的市场开拓能力
参考答案:
B -
下列说法,正确的说法是( )
A.
只要在存储过程中有增删改语句,一定加自治事务
B.
在函数内可以修改表数据
C.
函数不能递归调用
D.
以上说法都不对
参考答案:
B -
关系数据库规范化是为解决关系数据库中什么问题而引入的。
A.
插入、删除和数据冗余
B.
提高查询速度
C.
减少数据操作的复杂性
D.
保证数据的安全性和完整性
参考答案:
A -
DB、DBMS和DBS三者之间的关系是_________。
A.
DBS与DB和DBMS无关
B.
DBMS包括DBS和DB
C.
DB包括DBMS和DBS
D.
DBS包括DB和DBMS
参考答案:
B -
如果在创建序列时指定其CACHE参数值为10,当序列的当前值为5时,数据库突然关闭,再次运行数据库后,序列将从以下哪个值开始?( )
A.
5
B.
6
C.
11
D.
16
参考答案:
C -
Oracle提供的(),能够在不同硬件平台上的Oracle数据库之间传递数据。
A.
归档日志运行模式
B.
RECOVER命令
C.
恢复管理器(RMAN)
D.
Export和Import工具
参考答案:
D -
修改系统中的参数值时,如果只修改服务器参数文件中的设置,则SCOPE选项的值应该为( )
A.
SPFILE
B.
MEMORY
C.
BOTH
D.
以上都不对
参考答案:
A -
DECLARE
TYPE EmpList
IS VARRAY(2) OF employees.employee_id%TYPE NOT NULL;
v_employees EmpList := EmpList();
BEGIN
DBMS_OUTPUT.PUT_LINE(v_employees.COUNT);
v_employees.EXTEND;
v_employees(1) := 30;
END;
/
下列关于上述PL / SQL块的结果的说法,正确的一项是:()。
A.
它执行成功,并显示值为2
B.
它执行成功,并显示值为0
C.
它生成一个错误,因为数组不能扩展
D.
它生成一个错误,因为该变长数组的声明是无效的。
参考答案:
B -
SQL语言中,条件年龄 BETWEEN 18 AND 30表示年龄在18至30之间,且_________。
A.
包括30岁但不包括18岁
B.
包括18岁和30岁
C.
包括18岁但不包括30岁
D.
不包括18岁和30岁
参考答案:
B -
下面哪条语句用于切换日志文件组?( )
A.
ALTER DATABASE SWITCH LOGFILE ;
B.
ALTER SYSTEM SWITCH LOGFILE ;.
C.
ALTER SYSTEM ARCHIVELOG ;
D.
ALTER DATABASE ARCHIVELOG ;
参考答案:
B -
以下关于数据库后台服务进程叙述正确是的( )
A.
DBWn负责从数据文件中读取数据到内存,并且负责将数据从内存回写到数据文件中
B.
LGWR负责从重做日志文件中读取信息到内存,并且负责将日志信息从内存回写到重做日志文件中
C.
SMON负责定时启动数据库并做相应的恢复和清理工作
D.
CKPT负责向数据库发出检查点,用于同步数据库的所有数据文件、控制文件和重做日志文件
参考答案:
D -
使用如下语句创建表mytest:
CREATE TABLE mytest (id NUMBER) FLASHBACK ARCHIVE 下列说法正确的是( )
A.
无法创建成功,因为FLASHBACK ARCHIVE子句没有指明闪回数据归档区
B.
一定可以创建成功,因为Oracle系统将为该表指定默认闪回数据归档区
C.
可以创建成功,但要求数据库中存在默认闪回数据归档区
D.
如果创建成功,可以以便用DROP语句删除该表
参考答案:
C -
在Oracle中,当用户要执行SELECT语句时,下列哪个进程从磁盘获得用户需要的数据()。
A.
用户进程
B.
服务器进程
C.
日志写入进程(LGWR)
D.
检查点进程(CKPT)
参考答案:
B -
数据库系统与文件系统的主要区别是
A.
数据库系统复杂,而文件系统简单。
B.
文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决。
C.
文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件。
D.
文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量。
参考答案:
B -
为列定义一个CHECK约束,希望该约束能对表中已存储的数据,以及以后向表中添加或修改的数据都进行检查,则应该将该约束设置为如下哪种状态?( )
A.
ENABLE VALIDATE
B.
ENABLE NOVALIDATE
C.
DISABLE VALIDATE
D.
DISABLE NOVALIDATE
参考答案:
A -
关于存储过程参数,正确的说法是( )
A.
存储过程的输出参数可以是标量类型,也可以是表类型
B.
存储过程输入参数可以不输入信息而调用过程
C.
可以指定字符参数的字符长度(函数的()或者过程的(number/varchar2))
D.
以上说法都不对
参考答案:
B -
存储数据123.45,可以使用下面哪种数据类型?( )
A.
NUMBER
B.
NUMBER(5)
C.
NUMBER(5,3)
D.
NUMBER(5,2)
参考答案:
D -
使用如下语句创建一个临时表空间temp: CREATE ___________ TABLESPACE temp ___________ „F: \\oraclefile\\temp.dbf „ SIZE 10M
AUTOEXTEND ON NEXT 2M
MAXSIZE 20M;
请从下列选项中选择正确的关键字补充上面的语句。( )
A.
不填)、DATAFILE
B.
TEMP, TEMPFILE
C.
TEMPORARY, TEMPFILE
D.
TEMP, DATAFILE
参考答案:
C -
下面对日志文件组及其成员叙述正确的是( )
A.
日志文件组中可以没有日志成员
B.
日志文件组中的日志成员大小一致
C.
在创建日志文件组时,其日志成员可以是已经存在的日志文件
D.
在创建日志文件组时,如果日志成员已经存在,则使用REUSE关键字就一定可以成功替换该文件
参考答案:
B -
如果要统计表中有多少行记录,应该使用下列哪个聚合函数?( )
A.
SUM函数
B.
AVG函数
C.
COUNT函数
D.
MAX函数
参考答案:
C -
在表连接时必须选择最佳连接顺序,例如,要连接3个相关表:table1、table2和table3,假设表table1有100行记录,表table2有1000行记录,表table3有10000行记录。那么表的连接顺序应该是( )
A.
首先应该将table2连接到table1上,接着是table2连接到table3上
B.
首先应该将table1连接到table2上,接着是table2连接到table3上
C.
首先应该将table3连接到table2上,接着是table2连接到table1上
D.
首先应该将table1连接到table3上,接着是table3连接到table2上
参考答案:
C -
当执行COMMIT语句时,会在哪类文件上发生I/O操作( )
A.
数据文件
B.
控制文件
C.
重做日志文件
D.
归档日志文件
参考答案:
C -
下列哪项后台服务进程不是Oracle例程必须要启动的( )
A.
DBWn
B.
LGWR
C.
PMON
D.
ARCn
参考答案:
D -
如果某列定义了UNIQUE约束,则( )
A.
该列不允许出现重复值。
B.
该列不允许出现NULL值。
C.
该列內允许出现一个NULL值。
D.
该列允许出现多个NULL值。
参考答案:
A -
Oracle数据库中,关于角色的说明,正确的是:()
A.
一个角色可以被授予自身
B.
角色的所有者都属于SYS用户
C.
一个角色可以包括系统和对象权限
D.
一个角色不能被授予其它角色
参考答案:
C -
在数据库中,下列说法()是不正确的。
A.
数据库避免了一切数据的重复
B.
若系统是完全可以控制的,则系统可确保更新时的一致性
C.
数据库中的数据可以共享
D.
数据库减少了数据冗余
参考答案:
A
多选题、
-
创建索引时,需要认真选择表中的哪些列可以作为索引列。选择索引列要掌握的原则是( )。
A.
经常在WHERE子句中使用的列
B.
经常在表连接查询中用于表之间连接的列
C.
不宜将经常修改的列作为索且
D.
不宜将经常在WHERE子句中使用,但与函数或操作符相结合的列作为索引列
参考答案:
ABCD -
数据字典是有以下那项组成:( )。
A.
表和视图
B.
用户
C.
存储过程和函数
D.
权限
参考答案:
ABCD -
以下在创建索引时需要注意的数据表方面的基本原则中,正确的是( )。
A.
避免对经常更新的数据表创建过多的索引
B.
对于存储数据较少的数据表,一般应该为其创建索引
C.
如果创建的视图包含了聚合、表联结及其组合时,可以考虑再创建索引视图
D.
如果数据表中存储的数据量很大,但数据的更新操作少,查询操作却很多,用户可为其创建多个索引以提高检索速度
参考答案:
AD -
请选择以下那几项是oracle客户端的链接工具:( )。
A.
IE浏览器
B.
SQL*PLUS
C.
PLSQL Developer
D.
以上答案均不对
参考答案:
ABC -
表命名时需要遵循的规则中选择正确的是( )。
A.
表明的首字符应该为字母
B.
不能使用保留字
C.
可以使用下划线、数字、字母、但不能使用空格和单引号
D.
同一用户下表名不能重复
参考答案:
ABCD -
下列关于视图的说法中,正确的是( )。
A.
视图是一种查看数据表中数据的方式
B.
视图就是真实的表
C.
视图具有一组命名的属性和相应的属性值
D.
除非是索引视图,否则视图不占用任何物理存储空间
参考答案:
ACD -
在Oracle中,关于触发器的描述错误的是( )。
A.
触发器可以删除,但不能禁用
B.
触发器只能用于表
C.
触发器可以分为行级和语句级两种
D.
触发器是一个对关联表发出insert、update、delete或select for update语句时触发的存储过程
参考答案:
ABC -
有关表空间的说法,下列说法正确的是:( )。
A.
从物理上来说,一个表空间是由具体的一个或多个磁盘上物理文件构成的。
B.
从逻辑上来说,一个表空间是由具体的一个或多个用户模式下的表、索引等数据构成的。
C.
某个用户的数据必定存在于某个表空间中。
D.
表空间是为了统一ORACLE物理和逻辑上的结构而建立的。
参考答案:
ABCD -
ORACLE数据库物理结构包括( )。
A.
数据文件
B.
日志文件
C.
控制文件
D.
临时文件
参考答案:
ABC -
下面关于子查询描述正确的是( )?
A.
一个子查询能返回0或多行
B.
在SELECT的WHERE子句中子查询层是没有限制的
C.
一个子查询只能用于SQL查询语句
D.
子查询可以出现在一个比较操作符的两边
参考答案:
AD -
在以下哪几种情况下使用唯一约束而不使用主键约束( )。
A.
列或几个列的组合不是主键
B.
列的值允许为空值
C.
列有外键引用
D.
列的值不允许为空值
参考答案:
AB -
系统全局区包括下面哪些区间?( )
A.
Java池
B.
软件代码区间
C.
数据缓冲区
D.
日志缓冲区
参考答案:
ACD -
当日志文件组处于下列哪种情况时,无法清空该日志文件组?( )
A.
ACTIVE
B.
INACTIVE
C.
CURRENT
D.
UNUSED
参考答案:
ACD -
Oracle 11g EM例程也叫实例,在EM例程管理界面可显示( )。
A.
用户参数
B.
内存参数
C.
还原管理
D.
所有初始化参数
参考答案:
ABD -
下面系统中属于关系数据库管理系统的是( )
A.
MS_SQL SERVER
B.
Oracle
C.
IMS
D.
DB2
参考答案:
ABC -
以下关于主键的描述错误的是( )。
A.
标识表中唯一的实体
B.
创建唯一的索引,允许空值
C.
只允许以表中第一字段建立
D.
表中允许有多个主键
参考答案:
BCD -
在初始化参数中设置了如下参数:
DB_BLOCK_SIZE = 8KB SGA_MAX_SIZE = 2GB SGA_TARGET = 0
SHARED_POOL_SIZE = 120MB DB_CACHE_SIZE = 896MB STREAM_POOL_SIZE = 0
LARGE_POOL_SIZE = 110 MB 哪几个描述是正确的? ( )
A.
不能设置参数 DB_8K_CACHE_SIZE的值.
B.
如果把共享池的大小增长到120MB,系统会自动调整共享池的大小到110M
C.
如果SGA_TARGET 的值是1GB,SHARED_POOL_SIZE 的值是120MB,那么即使共享池有空闲区域内存也不能使用共享池
D.
当缓冲池中有足够的容量,一个应用程序能够从共享池分配超过120 MB的空间。.
参考答案:
AC -
ORACLE中 char类型与varchar2类型的区别,描述正确的是( )。
A.
char 为定长字符数据类型
B.
char为不定长字符数据类型
C.
varchar2为定长数据类型
D.
varchar2为不定长数据类型
参考答案:
AD -
在Oracle查询的结果中,要将表userInfo 中的userName 字段用别名 “用户名”显示,请选择错误的语句( )。
A.
SELECT 用户名 = userName FROM userInfo
B.
SELECT userName AS 用户名 FROM userInfo
C.
SELECT userName = 用户名 FROM userInfo
D.
SELECT username 用户名 FROM userInfo
参考答案:
AC
- 假设需要为表 customer 添加主键约束,主键列为 customer_id,可以使用如下( )方式。
A.
Alter table CUSTOMER ADD pk_customer primary key (customer_id);
B.
Alter table CUSTOMER ADD primary key (customer_id);
C.
Alter table CUSTOMER ADD constraint pk_customer (customer_id);
D.
Alter table CUSTOMER ADD constraint pk_customer primary key (customer_id);
参考答案:
BD
-
关于模式和实例之间的关系,以下描述不正确的是( )。
A.
模式的一个具体值称为模式的一个实例
B.
模式是相对稳定的,而实例是相对变动的
C.
实例反映的是数据的结构及其联系
D.
模式反映的是数据库某一时刻的状态
参考答案:
CD -
下列关于约束和索引的说法中,正确的是( )。
A.
在字段上定义PRIMARY KEY约束时会自动创建B树唯一索引
B.
在字段上定义UNIQUE约束时会自动创建一个B树唯一索引
C.
默认情况下,禁用约束会删除对应的索引,而激活约束会自动重建相应的索引
D.
定义FOREIGN KEY约束时会创建一个B树唯一索引
参考答案:
ABC -
数据库事务处理具有如下特征( )。
A.
原子性
B.
隔离性
C.
持久性
D.
一致性
参考答案:
ABCD -
下面哪些关于存储过程的描述是正确的( )。
A.
存储过程是一组预编译的SQL语句
B.
存储过程可加快查询的执行速度
C.
不可以在存储过程内引用临时表
D.
帮助实现模块化编程
参考答案:
ABD
- ( )能够实现ORACLE下的分页查询 。
A.
ROWNUM
B.
ROWID
C.
TOP n
D.
PERCENT n
参考答案:
AB
-
关于主键描述错误的是:( )。
A.
包含一列
B.
包含两列
C.
包含一列或者多列
D.
以上都不正确
参考答案:
ABD -
以下属于日常生活中的数据库应用系统的是( )。
A.
银行业务系统
B.
超市销售系统
C.
大厦监控系统
D.
教学管理系统
参考答案:
ABD -
下列那些是Oracle的伪列( )。
A.
ROWID
B.
ROW_NUMBER()
C.
LEVEL
D.
ROWNUM
参考答案:
ACD -
关于表结构的定义,下面说法中正确的是 ( ) 。
A.
表名在同一个数据库内应是唯一的
B.
创建表使用CREATE TABLE命令
C.
删除表使用DELETE TABLE命令
D.
修改表使用ALTER TABLE命令
参考答案:
ABD -
关于子查询以下哪两种说法是正确的?( )。
A.
外层查询返回结果之后,执行内层查询
B.
先执行子查询,再执行外层查询
C.
对于子查询返回的结果,外层查询只执行一次
D.
外层查询返回的每行结果都与内层查询结果进行比较
参考答案:
AD -
以下关于存储器特点的描述中,正确的是( )。
A.
存储过程比一般的程序语句执行起来速度更快,同时减少了网络流量,节省了大量时间和数据流量
B.
存储过程可以使用控制流语句和变量,并且在一个存储过程中可以调用其他存储过程
C.
存储过程可以提高应用程序的安全性,防止SQL嵌入式攻击
D.
存储过程不允许代码绑定,并且不能引用当前不存在的对象
参考答案:
ABC -
成绩表grade中字段score代表分数,以下( )语句返回成绩表中的最低分。
A.
select max(score) from grade
B.
select top 1 score from grade order by score asc
C.
select min(score) from grade
D.
select top 1 score from grade order by score desc
参考答案:
BC
判断填空
-
一个表空间物理上对应一个或多个__________文件。
参考答案:
1:数据 -
在SQL查询时,使用____________子句指出的是分组条件。
参考答案:
1:HAVING 、
在查询结果中有重复记录时,使用________关键字能够去掉查询中重复的行。
参考答案:
1:DISTINCT
标准的SQL 语言语句类型可以分为:、数据操纵语句(DML)和。
参考答案:
1:数据定义语句(DDL),数据控制语句(DCL)
与主键不同,唯一键可以是 null 值( )。
参考答案:
正确
存储过程中的输出参数必须使用________关键字修饰。
参考答案:
1:OUT
数据字典的所有者是system( )。
参考答案:
错误
SQL的含义是__________。
参考答案:
1:结构化查询语言
对一个超过200个汉字的内容,应用一个____型的字段来存放
参考答案:
1:text
Order by 子句仅对检索数据的显示有影响,并不改变表中行的内部顺序( )。
参考答案:
正确
( )INSERT语句所插入的数据行数据可以来自另外一个SELECT语句的结果集。
参考答案:
正确
要对查询结果集中的多行数据进行逐行处理,应该使用_______技术。
参考答案:
1:
游标
从一个表中删除元组时, delete 和 drop table 命令可以起到同样的效果( )。
参考答案:
错误
( )主键被强制定义成NOT NULL和UNIQUE。
参考答案:
正确
打开游标的语句是FECH CURSOR( )。
参考答案:
错误
Delete 可以有选择地删除记录,使用 rollback 语句可以取消这个命令的执行( )。
参考答案:
正确
Oracle支持5种类型的约束_________、、、、。
参考答案:
1:NOT NULL (非空)、CHECK (检查)、UNIQUE (唯一)、PRIMARY KEY (主键)、POREIGN KEY (外部键)
1.1.1.1 PL/SQL程序由三个块组成,即_______、、。
参考答案:
1:
声明部分、执行部分、异常处理部分 、
Create table
as select 能够创建一个复制表对象( )。参考答案:
正确
完整的 E-R 模型有三要素:即_____________、、。
参考答案:
1:实体集、属性、联系及其类型 、
关系数据库模型支持三种类型的表关联关系:、、_______。
参考答案:
1:一对一、一对多、多对多
察看当前数据库中表名语句是_____。
参考答案:
1:show tables
( )建立索引的目的在于加快查询速度以及约束输入的数据。
参考答案:
正确
变量赋值有两种方式:用________赋值运算符为单个变量赋值;通过________或________语句给________个变量同时赋值。
参考答案:
1::=、SELECT INTO、FETCH INTO、多
数据库的完整性是指数据的_____________、、。
参考答案:
1:实体完整性、参照完整性、用户定义完整性 、
触发器的执行是由时间触发的,而普通存储过程是由命令调用执行的( )。
参考答案:
正确
隐式指针与显式指针的不同在于显式指针仅仅访问一行,隐式的可以访问多行。( )。
参考答案:
错误
使用___________关键字,可以快速删除表中的所有记录,并且不在撤消表空间中记录撤消数据。
参考答案:
1:TRUNCATE
事务有4个特性,即___________、____________、和。
参考答案:
1:原子性 、一致性、隔离性和持久性 、
( )只能将表中的一个列定义为主键,不能将多个列定义为复合的主键。
参考答案:
错误
1.1.1.1存储过程的参数模式有:__________、_________和__________3种。
参考答案:
1:IN、OUT、IN OUT
Oracle数据库由一个或多个表空间组成,表空间由一个或多个_________组成。表空间具有____________和____________两种状态。当处于前者时,表空间的数据可为用户使用,当处于后者时,表空间的数据不可用。
参考答案:
1:数据文件、读写 READ WRITE、只读 READ ONLY
( )SELECT语句的ORDER BY子句定义的排序表达式所参照的列甚至可以不出现在输出列表中。
参考答案:
正确
1.1.1.1ORACLE数据库由三种类型的文件组成:___________、_和。
参考答案:
1:数据文件、日志文件、控制文件 、
( )当一个表中所有行都被delete语句删除后,该表也同时被删除了。
参考答案:
错误
一个包由两个分开的部分组成_______和_______。
参考答案:
1:
包说明( package soecification)、包主体( package body )
-
在视图中并不保存任何数据,通过视图操作的数据仍然保存在表中*( )。
参考答案:
正确 -
一个事务对数据库的所有操作是一个不可分割的操作序列,这个性质称为事务的_____。
参考答案:
1:原子性 、 -
能够自动执行操作的存储对象是:______________。
参考答案:
1:触发器 -
在DELETE触发器中,可以引用一个名为____的虚拟表,访问被删除的行
参考答案:
1:OLD -
在oracle中,给变量赋值所用的运算符是:________。
参考答案:
1::= -
在众多的事务控制语句中,用来撤销事务的操作的语句为________,用于持久化事务对数据库操作的语句是________。
参考答案:
1:
ROLLBACK,COMMIT -
SELECT语句查询条件中的谓词“=ANY”与运算符_______等价。
参考答案:
1:
in 、
簡單題
-
简述NO_DATA_FOUND和%NOTFOUND两个保留字的用法。
参考答案:
SELECT . . . INTO 语句触发 NO_DATA_FOUND;
当一个显示光标的 where 子句未找到时触发 %NOTFOUND;
当UPDATE或DELETE 语句的where 子句未找到时触发 SQL%NOTFOUND;
在光标的提取(Fetch)循环中要用 %NOTFOUND 或%FOUND 来确定循环的退出条件,不要用 NO_DATA_FOUND。 -
某个客户服务代表接到一个客户关于需要修改的账户问题的电话。当这个代表正准备按应用中的Save按钮,从而提交所输入的用户修改时,火警警报响了,所以他必须离开这栋大楼。当火警警报结束后,他回到工作台,不过他发现他处理的应用生成了一个出错,这个出错提示他要修改的表已经被锁定了,要求他联系DBA,所以他给你打了电话,报告这个问题。
回答下面的问题并完成这些任务。
(1)列出你可能采取的检查锁争用的方法。(4分)
(2)假定这个错误是ORA-000060,可能是什么原因导致的?(5分)
(3)你将采取什么来解决锁争用的问题呢? (4分)
参考答案:
(1) 检查动态性能视图V$LOCK;通过OEM的检查锁功能;检查SQL跟踪文
件。
(2) 死锁产生的。
(3) 杀掉死锁进程。 -
简述PL/SQL程序包的作用。
参考答案:
把相关的过程和函数归类,按照功能的相关性存放在一起,并赋予一定的管理功能和使用的一组对象就叫做包。Oracle系统把相关的模块归类成为包,可使开发人员利用面向对象的方法进行内嵌过程的开发,从而提高系统性能。 -
简述系统权限与对象权限的区别。
参考答案:
系统权限是指对整个Oracle系统的操作权限。一般由数据库管理员授予用户并允许用户将被授予的系统权限再授予其他用户。 对象权限是指用户对数据库中对象的操作权限。 -
简述归档模式与非归档模式的区别。
参考答案:
在非归档日志模式下如果发生日志切换则日志文件中原有内容将被新的内容覆盖在归档日志模式下如果发生日志切换则ORACLE系统会将日志文件通过赋值保存在指定的地方然后才允许向文件中写入新的日志内容。 -
表空间的状态有哪几种,它们分别表示什么意思?
参考答案:
在线:只有在此状态下才允许访问表空间中的数据;离线:当表空间状态为离线时不允许范围表空间中的数据;只读:当表空间状态为只读时可以访问表空间中的数据但访问仅仅限于阅读而不能进行任何更新或删除操作;读写:当表空间状态为读写时可以对表空间进行正常访问包括对表空间中的数据进行查询、更新和删除等操作。 -
简述系统权限与角色权限的区别。
参考答案:
Oracle系统权限需要授予者有进行系统级活动的能力,如连接数据库,更改
用户会话、建立表或建立用户等等。角色权限就是将属于用户的权限授予一个角色。任何权限都可以授予给一个角色。授予系统权限给被授予者必须使用WITH_ADMIN_OPTION子句,在会话期间通过SET ROLE语句授予或撤销角色权限。 -
控制文件在数据库中有什么作用?在创建控制文件时应该注意哪些问题?
参考答案:
控制文件存放数据库中的数据文件和日志文件的信息。在创建控制文件时需要指定与数据库相关的日志文件与数据文件。 -
导出的Query参数受到哪些方面的限制。
参考答案:
不能为完全、用户或可移动表空间方式的导出来指定query;条件必须适用于所有指定的表;不能在DIRECT中指定query;不能为嵌套表指定QUERY。 -
日志文件组有哪几种状态,它们分别表示什么含义?
参考答案:
归档未完成 正在使用 非活动状态 从未使用 -
如果想要了解数据库中所有表的信息,应该使用哪种数据字典?
参考答案:
dba_tables -
在进行导入操作时,有哪几种优化方式。
参考答案:
1、创建几个大的重做日志文件;2、最小化数据库提交次数;3、分步导入; -
用PL/SQL编写函数计算一个给定的正整数的阶乘,并编写调用程序对该函数进行调用。
参考答案:
FUNCTION fac(n POSITIVE) RETURN INTEGER IS
BEGIN
IF n = 1 THEN
RETURN 1; ELSE
RETURN n * fac(n - 1); END IF;
END fac;
BEGIN
dbms_output.put_line(fac(5)); END; -
以管理员身份登录,在Oracle数据库中进行如下操作:
SQL> select tablespace_name, segment_type, sum(bytes) / 1048576 Mb 2 from dba_segments where owner = ‘HR’ 3 group by tablespace_name, segment_type 4 /
执行结果如下:
TABLESPACE_NAME SEGMENT_TYPE MB ------------------------------ ------------------ ----------
EXAMPLE INDEX 1.1875 EXAMPLE TABLE .375 USERS TABLE 18.3125 USERS INDEX 35.725 根据Oracle优化的原则有什么问题?怎么改正?
参考答案:
index不应该在user的表空间 -
在OEM控制台上,数据库显示为红色的圆圈和斜线,表示数据库已关闭;然而数据库是正在运行的。请解释出现这种情况的原因,以及如何处理?
参考答案:
监听器没启动,所以无法查询到数据库的状态。
16.简述Oracle警告文件记录的内容。
参考答案:
警告日志的文件,用于记录数据库文件运行中主要事件的命令与结果。
-
简述闪回技术的作用,并分别介绍Oracle Database 11g中各种闪回技术的作用。
参考答案:
为了让用户可以及时获取误操作之前的数据,Oracle提供了一种处理机制,也称闪回技术,使用Oracle闪回技术,可以实现数据的迅速恢复,而且不依赖于数据备份。
闪回表(Flashback Table)技术用于恢复表中的数据,可以在线进行闪回表操作。
闪回删除(Flashback Drop)技术用于恢复已经被用户删除的数据库对象,这需要使用到Oracle数据库系统中的回收站机制。
闪回版本查询(Flashback Version Query)技术用于查询某段时间内对表的操作记录,主要针对INSERT、UPDATE和DELETE操作。
如果需要撤消己提交的事务,可以使用闪回事务查询(Flashback Transaction Query)。闪回事务查询是对闪回版本查询的扩充,通过它可以审计事务甚至撤消一个已提交的事务。
闪回数据库,实际上就是将数据库回退到过去的一个时间点或SCN上,从而实现整个数据库的恢复,这种恢复不需要通过备份,所以应用起来更方便、更快速。
新引入了闪回数据归档(Flashback Data Archive)技术。闪回数据归档的实现机制与前面几种闪回不同,它将改变的数据另外存储到特定的闪回数据归档区中,从而让闪回不再受撤消数据的限制,大大提高了数据的保留时间,闪回数据归档中的数据行可以保留几年甚至几十年。 -
根据以下情况,回答相关问题。
(1)当登录至OEM控制台时,得到以下错误信息: VOC-00002:Failure to obtain interface login 请问是什么原因导致。
(2)当使用OEM控制台时,得到以下错误信息:
VOC-00107:Failure setting credential details ORA-03114:
Not Connected to ORACLE 请问是什么原因导致。
(3)当使用SYSDBA登录至OEM控制台时,得到以下错误信息: VOC-00121:Failure updating or inserting a user detail entry ORA-00942:Table or view does not exist
请问是什么原因导致。
参考答案:
(1) 原因是OEM通信后台进程不能打开一个与Repository的连接,确认TCP/IP
配置正确,以及是否通信后台进程的缺省参数已被修改。
(2) 原因是OEMRepository所在数据库已关机,或是连接数据库的服务发生了网
络故障。
(3) 权限不够,用户登录至OEM控制台的缺省角色是NORMAL,看不到相关
的表。 -
下面4条SELECT语句的执行结果一样吗?执行效率一样吗?哪条语句的执行效率最高,为什么?
SELECT employee_id FROM employees; SELECT employee_id FROM hr. employees; SELECT employee_id FROM HR.EMPLOYEES; SELECT EMPLOYEE_ID FROM HR.EMPLOYEES;
参考答案:
以上四个SQL在表中分析整理之后产生的结果及执行的时间是一样的,但是从ORACLE共享内存SGA的原理,可以得出ORACLE对每个SQL都会对其进行一次分析,并且占用共享内存,如果将SQL的字符串及格式写得完全相同则ORACLE只会分析一次,共享内存也只会留下一次的分析结果,这不仅可以减少分析SQL的时间,而且可以减少共享内存重复的信息,ORACLE也可以准确统计SQL的执行频率。 -
简述在应用Oracle的角色权限机制时,根据不同的用户如何设置用户的权限。
参考答案:
管理员可以使用CREATE ROLE语句建立一些不同级别的角色,然后根据各个用户的情况来授予不同的角色。使用角色,可以简化权限的管理,先将对象的访问权授予某个角色,然后把角色授予用户。 -
给 teacher_info 表编写一个(before-delete)触发器,当要在teacher_info 表中删除一个记录,将触发该触发器。在触发器中将判断老师是否已经授课?如果已经安排某位教师授课,它将激发一个例外,把无法删除的信息返回用户。
参考答案:
create trigger teacher_cancel
on teacher_info instead of delete as
declare @sk int,
@ID int begin
select @ID=course_id FROM deleted
select @sk=SKJL from teacher_info where course_id=@ID if(@sk=0)
delete from teacher_info where course_id=@ID else begin
raiserror(‘无法删除’,10,1)
end end -
在实际应用中,需要临时创建一个表来使用,那么是否可以将该表创建在临时表空间中?
参考答案:
可以,但是不是必须。 -
如果初始化参数db_block_size的值为l6KB,那么还能设置db_16k_cache_size参数的值吗?请结合本章的学习内容,创建一个非标准数据块表空间,并简单概述其步骤。
参考答案:
不能。 -
简述存储过程和函数的区别。
参考答案:
本质上没区别。只是函数有如:只能返回一个变量的限制。而存储过程可以返回多个。而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行。执行的本质都一样。
函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少。 -
简述数据库管理员使用初始化参数文件的作用。
参考答案:
始化参数文件,也称启动参数文件,是配置Oracle数据库的一个重要方面,初始化参数文件内包括定义参数,静态限制参数,动态性能参数,控制或修改数据库和数据库实例操作的参数。当数据库启动时,在创建实例或读取控制文件之前,先读取初始化参数文件。 -
在执行连接查询时,FROM和WHERE子句中,对表的连接顺序有什么要求?
参考答案:
顺序都是先生成连接条件结果较少的,也就是说在语句执行结果集时,结果集尽量的小,不要大,所以对于连接时两个小数据表先连接,然后再是大表连接。 -
根据下面的要求编写相应存储过程,并调用执行。具体要求如下:
1)编写一个存储过程,向表中随机插入1000条记录
SerialNo:使用序列方式,自增长。
Filepath:使用随机插入6个字母
Partid:使用随机4位数字
StaffNo:从YTCZ060001……. YTCZ060020 中随机抽取
RecordTime:从2012年8月1日之前的6个月中随机抽取。
2)写一个程序块,循环调用500次此存储过程,保证数据表中存储50万条记录。
参考答案:
(1)create table RecordFile ( SerialNo VARCHAR2(20), FilePath VARCHAR2(200), Partid Varchar2(4), StaffNo VARCHAR2(10), RecordTime DATE)
Create index Ix_RecordFile_SerialNo on recordfile(SerialNo) pctfree 30 tablespace mytbs create sequence seq_RecordFile start with 0 minvalue 0;
create or replace procedure add_RecordFile is begin
for i in 1…1000 loop
insert into RecordFile values
(seq_RecordFile.nextval, dbms_random.string(‘u’,6),
trunc(dbms_random.value(1000,9999)),
‘YTCZ0’||trunc(dbms_random.value(60001,60020)),
to_date(‘2006-08-04’,‘yyyy-mm-dd’)-dbms_random.value(0,181)); end loop; commit;
end add_RecordFile;
(2) begin
for i in 1…500 loop add_RecordFile; end loop; end; -
简述PL/SQL的异常处理机制。
参考答案:
当发生错误时,程序无条件转到异常处理部分,这就要求代码要非常干净并把错误处理部分和程序的其它部分分开。oracle允许声明其他异常条件类型以扩展错误/异常处理。这种扩展使PL/SQL的异常处理非常灵活。
当一个运行时错误发生时,称为一个异常被抛出。PL/SQL程序编译时的错误不是能被处理得异常,只有在运行时的异常能被处理。在PL/SQL程序设计中异常的抛出和处理是非常重要的内容。 -
简述使用闪回删除还原被删除的表时,需要注意哪些问题。
参考答案:
闪回删除(Flashback Drop)技术用于恢复已经被用户删除的数据库对象,这需要使用到Oracle数据库系统中的回收站机制。
如果回收站处于禁用(OFF)状态,则被删除的数据库对象无法保存到回收站中,只能是被彻底删除。 -
思考如何在PL/SQL里避免重复编码的问题,请举例说明。
参考答案:
使用存储过程或函数,举例略。 -
OEM数据库工具组的功能是什么?主要包括什么工具?
参考答案:
Oracle 11g EM可以对Oracle数据库进行管理,包括对用户的管理、表空间的管理、导出与导入等;可对本地Oracle服务器进行管理,要对分布环境的各Oracle服务器进行管理,要进行专门的配置;除了提供功能感强大的管理外,还为Oracle系统的优化与调整、SQL语句的优化等提供顾问,如找出消耗资源最多的SQL语句等。
工具包括:实例管理工具、性能管理工具、可用性工具、服务期工具、方案工具、数据移动工具等。 -
查找出当前用户模式下,每张表的记录数,以scott用户为例,结果应如下:
DEPT…4
EMP…14 BONUS…0 SALGRADE…5
请编写PL/SQL程序块实现。
参考答案:
DECLARE type tab_names is table of varchar2(20) index by binary_integer; tab_name tab_names; coun number; str varchar2(100); BEGIN select table_name bulk collect into tab_name from user_tables; for i in tab_name.first…tab_name.last LOOP str:=‘select count(*) from ‘||tab_name(i); execute immediate str into coun; dbms_output.put_line(tab_name(i)||’…’||coun); ENDLOOP; END; -
下面两条SELECT语句的执行结果一样吗?执行效率一样吗?哪条语句的执行效率较高,为什么?(其中,符合条件employee_id> 150的记录在记录集中比率为80%,符合条件department_id = 20的记录所占的比率为3%。)
SELECT * FROM hr.employees WHERE employee_id>150 AND department_id=10;
SELECT * FROM hr.employees WHERE department_id=20 AND employee_id >150; -
在PL/SQL里如何使用绑定变量,为何使用绑定变量,请举例说明。
参考答案:
这是解决Oracle应用程序可伸缩性的一个关键环节;而Oracle的共享池就决定了开发人员必须使用绑定变量;如果想要Oracle 运行减慢,甚至完全终止,那就可以不用绑定变量;
这里举例说明上述问题;
为了查询一个员工代号是123,你可以这样查询: select * from emp where empno=‟123‟;
你也可以这样查询:
select * from emp where empno=:empno;
第一个查询使用的频率越高,所消耗的系统硬件资源越大,从而降低了用户的使用数量;它也会把优化好的其它查询语句从共享池中踢出,系统的整体性能降低; 而执行绑定变量,提交相同对象的完全相同的查询的用户,,一次性使用就可重复使用,提高效率。
以上是关于21年数据库考试复习题目的主要内容,如果未能解决你的问题,请参考以下文章
NEFU C语言阶段一2021年计算机1班阶段考试复习 参考代码