admin 管理员组

文章数量: 887021


2024年2月7日发(作者:长沙计算机培训机构哪家最好)

期末考试卷(卷)

课程名称: 数据库

考试方式:开卷〔 〕闭卷〔√〕

题号

得分

一 二 三 四 五 六 总分

统分人签名

考生考前须知:1、本试卷共 4 页,请查看试卷中是否有缺页。

2、考试完毕后,考生不得将试卷、答题纸带出考场。

1、以下〔 a 〕内存区不属于 SGA。

A.PGA

B.日志缓冲区

C.数据缓冲区

D.共享池

2、 d 〕模式存储数据库中数据字典表和视图。

〔 A.DBA

B.SCOTT

C.SYSTEM

D.SYS

3、 Oracle 中创立用户时, 在 假设未提及 DEFAULT TABLESPACE

关键字, Oracle 就将 c 〕 那么 〔 表空间分配给用户作为默认表空间。 A.HR

B.SCOTT

C.SYSTEM

D.SYS

4、 a 〕效劳监听并按受来自客户端应用程序连接请求。 〔

A.OracleHOME_NAMETNSListener

B.OracleServiceSID

C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer

5、 b 〕函数通常用来计算累计排名、移动平均数和报表聚合等。 〔

A.汇总 B.分析 C.分组 D.单行

6、 b〕SQL 语句将为计算列 SAL*12 生成别名 Annual Salary 〔

A.SELECT ename,sal*12 ‘Annual Salary’ FROM emp;

B.SELECT ename,sal*12 “Annual Salary〞 FROM emp;

C.SELECT ename,sal*12 AS Annual Salary FROM emp;

D.SELECT ename,sal*12 AS INITCAP(“Annual Salary〞) FROM emp;

7、锁用于提供(b )。

A.改良性能

B.数据完整性和一致性

C.可用性和易于维护

D.用户平安

8、( c )锁用于锁定表,允许其他用户查询表中行和锁定表,但不允许插入、更新和删除 行。

A.行共享 B.行排他 C.共享 D.排他

9、带有( b )子句 SELECT 语句可以在表一行或多行上放置排他锁。

A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH

10、使用( c )命令可以在已分区表第一个分区之前添加新分区。

A.添加分区 B.截断分区 C.拆分分区 D.不能在第一个分区前添加分区

11、( c )分区允许用户明确地控制无序行到分区映射。

A.散列 B.范围 C.列表 D.复合

12、可以使用〔 a〕伪列来访问序列。

A.CURRVAL 和 NEXTVAL B.NEXTVAL 和 PREVAL C.CACHE

和 NOCACHE D.MAXVALUE 和 MINVALUE

13、带有错误视图可使用〔 a〕选项来创立。

A.FORCE B.WITH CHECK OPTION C.CREATE VIEW WITH

ERROR D.CREATE ERROR VIEW

14、在联接视图中,当〔 b 〕时,该基表被称为键保存表。

A.基表主键不是结果集主键 B.基表主键是结果集主键 C.基表主键是结果集外键 D.基表主键不是结果集外键

15、在列取值重复率比拟高列上,适合创立〔 d〕索引。

A.标准 B.唯一 C.分区 D.位图

16、要以自身模式创立私有同义词,用户必须拥有〔 c 〕系统权限

A.CREATE PRIVATE SYNONYM B.CREATE PUBLIC SYNONYM

C.CREATE SYNONYM D.CREATE ANY SYNONYM

17、PL/SQL 块中不能直接使用 SQL 命令是〔 d 〕 。

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

18、以零作除数时会引发〔b 〕异常。

A.VALUE_ERROR B.ZERO_DIVIDE C.STORAGE_ERROR

D.SELF_IS_NULL

19、要更新游标结果集中当前行,应使用〔 a〕子句。

A.WHERE CURRENT OF B.FOR UPDATE C.FOR DELETE D.FOR

MODIFY

20、用于处理得到单行查询结果游标为〔 b 〕 。

A.循环游标 B.隐式游标 C.REF 游标 D.显式游标

21、公用子程序和常量在〔 c 〕中声明。

A.过程 B.游标 C.包标准 D.包主体

22、数据字典视图〔 c〕包含存储过程代码文本 A.USER_OBJECTS

B.USER_TEXT C.USER_SOURCE D.USER_DESC

23、以下不属于命名 PL/SQL 块是〔c 〕 。

A.程序包 B.过程 C.游标 D.函数

24、 a 〕包用于显示 PL/SQL 块和存储过程中调试信息。

〔 A.DBMS_OUTPUT B.DBMS_STANDARD C.DBMS_INPUT

D.DBMS_SESSION

25、Oracle 内置程序包由〔a 〕用户所有。

A.SYS B.SYSTEM C.SCOTT D.PUBLIC

26、 a 〕触发器允许触发操作中语句访问行列值。

〔 A.行级 B.语句级 C.模式 D.数据库级

27、在非归档日志方式下操作数据库禁用了〔a 〕 。

A.归档日志 B.联机日志 C.日志写入程序 D.日志文件

28、以下哪种备份方式需要在完全关闭数据库进展〔a 〕 。

A.无归档日志模式下数据库备份 B.归档日志模式下数据库备份 C.使

用导出实用程序进展逻辑备份 D.以上都不对

29、 b 〕方式导出会从指定表中导出所有数据。

〔 A.分区 B.表 C.全部数据库 D.表空间 30、

c 〕参数用于确定是否要导入整个导出文件。

〔 A.CONSTRAINTS B.TABLES C.FULL D.FILE 填空题〔 二、填空题〔每空 2 分,共 40 分〕

1、 假设已在某远程客户端完成网络效劳名配置, 效劳名为 aptech, 请写出用户 MARTIN 〔用 户口令 martinpass〕连接到效劳器命令:

_Connect martin/martinpass@aptech____________________________;

2、SYS 用户以管理员身份登录后,要授予用户 MARTIN 可以对

SCOTT 用户 EMP 表进 行查询权限,请写出授权命令: 〔假设

MARTIN 用户已存在〕 __Grant select on to

martin____________________________;

3、 创立表 employee 副本,但不包含表中记录: CREATE TABLE

employee_copy AS Select 1=2______________;

*

from

employee

where

4、查询 itemfile 表中 itemrate 列信息,要求将数值转换为字符串,并使用当前货币符号 作为前缀: SELECT _To_char_(itemrate,'C99999')

FROM itemfile;

5、查 itemfile 表中 itemdesc、re_level 列信息,要求 re_level 为 NULL

时显示为 0 SELECT itemdesc, _NVL_(re_level,0) FROM itemfile;

6、完成以下 PL/SQL 块,功能是:显示 2 到 50 25 个偶数。 BEGIN

FOR_even_number_ IN _1..25_ LOOP

DBMS__LINE(even_number*2); END LOOP END;

7、 完成以下 PL/SQL 块,功能是:承受职员编号并检索职员姓名。将职员姓名存储在变量 empname 中,如果代码引发 VALUE_ERROR

异常,那么向用户显示错误消息。 DELCARE empname

%TYPE;;

eno %TYPE; BEGIN eno:=’&employee_number’;

___SELECT ename INTO empname FROM employee WHERE

empno=eno;___; DBMS__LINE(‘职员姓名:’||empname);

_EXCEPTION WHEN VALUE_ERROR THEN

DBMS__LINE(‘要存储在变量中值过大’) END;

8、完成以下 PL/SQL 块,功能是:使用游标,显示所有单价低于 250

元玩具单价。 DECLARE my_toy_price ce%TYPE; CURSOR

toy_cur IS SELECT toyprice FROM toys WHERE toyprice<250; BEGIN

OPEN toy_cur_ LOOP _FETCH toy_cur INTO my_toy_price;_ EXIT

WHEN toy_cur%NOTFOUND; DBMS__LINE

(toy_cur%ROWCOUNT || '. 玩 具 单 价 :' || my_toy_price); END LOOP;

CLOSE toy_cur; END;

9、完成以下 PL/SQL 块,功能是:使用游标显示销售报表。如果目标销售额〔tsales〕大 于实际销售额(asales),那么显示消息“需提高销售额〞 。如果 tsales 等于 asales,那么显示 消息“已到达销售额〞 ,否那么显示消息“销售业绩出色〞 DECLARE CURSOR sales_cur IS

SELECT * FROM salesdetails; BEGIN _FOR sales_rec IN sales_cur

LOOP_ IF sales_ > sales_ THEN

DBMS__LINE('产品:'||sales_||' 需提高销售额');

ELSE IF sales_ = sales_ THEN

DBMS__LINE('产品:'||sales_||'已到达销售额');

ELSE DBMS__LINE('产品:' ||sales_||'销售业绩出色'); END IF; END IF; END LOOP; END;

10、完成以下 PL/SQL 块,功能是:创立一个交换两数过程。 CREATE

OR REPLACE PROCEDURE s IN OUT NUMBER, p2 _IN OUT_

NUMBER) IS v_temp NUMBER; BEGIN v_temp := p1; p1 := p2; p2 :=

v_temp; END; 11、完成以下 PL/SQL 块,功能是:创立一个函数

dept_name,其功能是承受职员编号后 返回职员所在部门名称。 〔注:部门名称在 dept 表中,而职员信息在 emp 表中,职员所在 部门号列名为 deptno〕 CREATE OR REPLACE FUNCTION dept_name (emp_no

NUMBER) RETURN VARCHAR2 AS dept_no NUMBER(2); result

%TYPE; BEGIN SELECT deptno INTO dept_no FROM emp

WHERE empno=emp_no; SELECT dname INTO result FROM dept

WHERE deptno = dept_no; _RETURN result;_; EXCEPTION WHEN

OTHERS THEN RETURN NULL; END; 12、要执行 pack_me 包中

order_proc 过程〔有一个输入参数〕 ,假设参数值为’002’,可 以输入以下命令: EXECUTE _ pack__proc(‘002’〕 13、完成以下

PL/SQL 块功能是:创立一个触发器 biu_job_emp,无论用户插入记录,

还是修改 EMP 表 job 列,都将用户指定 job 列值转换成大写。

CREATE OR REPLACE TRIGGER biu_job_emp _BEFORE INSERT OR

UPDATE OF job ON emp_ _FOR EACH ROW_

BEGIN : :=_UPPER(:)_; END;…….


本文标签: 用户 职员 分区 日志 数据库