当前位置:文档之家› oracle期末考试试题及答案

oracle期末考试试题及答案

oracle期末考试试题及答案
oracle期末考试试题及答案

1、以下 < )内存区不属于 SGA 。

A.PGA B .日志缓冲区 C .数据缓冲区 D .共享池

2、< )模式存储数据库中数据字典的表和视图。

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

3、在 Oracle 中创建用户时,若未提及 DEFAULT TABLESPACE 关键字,则 Oracle 就将 < )表空间

分配给用户作为默认表空间。f0gZb36o7S

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

4、< )服务监听并按受来自客户端应用程序的连接请求。

A . OracleHOME_NAMETNSListener

B . OracleServiceSID

C . OracleHOME_NAMEAgent

D. OracleHOME_NAMEHTTPServer

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

A .汇总

B .分析

C .分组

D .单行

6、< )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; f0gZb36o7S

7、锁用于提供( > 。

A .改进的性能

B .数据的完整性和一致性

C .可用性和易于维护

D .用户安全

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

A .行共享

B .行排他

C .共享

D .排他

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

A. FOR INSERT B. FOR UPDATE

C.FOR DELETE D .FOR REFRESH

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

A .添加分区

B .截断分区

C ?拆分分区

D ?不能在第一个分区前添加分区

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

A .散列

B .范围

C .列表

D .复合

12、可以使用 < )伪列来访问序列。

A. CURRVAL 和 NEXTVAL B . NEXTVAL 和 PREVAL

C . CACHE 和 NOCACHE

D . MAXVALU

E 和 MINVALUE

13、带有错误的视图可使用 < )选项来创建。

A. FORCE

B.WITH CHECK OPTION

C . CREATE VIEW WITH ERROR

D . CREAT

E ERROR VIEW

14、在联接视图中,当 < )时,该基表被称为键保留表。

A ?基表的主键不是结果集的主键

B .基表的主键是结果集的主键

C ?基表的主键是结果集的外键

D ?基表的主键不是结果集的外键

15、在列的取值重复率比较高的列上,适合创建< )索引。

A .标准

B .唯一

C .分区

D .位图

16、要以自身的模式创建私有同义词,用户必须拥有< )系统权限

A.CREATE PRIVATE SYNONYM

B.CREATE PUBLIC SYNONYM

C.CREATE SYNONYM

D . CREAT

E ANY SYNONYM

17、PL/SQL 块中不能直接使用的 SQL 命令是 < )。

A. SELECT B . INSERT

C. UPDATE

D. DROP

18、以零作除数时会引发 < )异常。

A. VALUE_ERROR B . ZERO_DIVIDE

C. STORAGE_ERROR D . SELF_IS_NULL

19、要更新游标结果集中的当前行,应使用< )子句。

A. WHERE CURRENT OF B . FOR UPDATE

C. FOR DELETE D . FOR MODIFY

20、用于处理得到单行查询结果的游标为< )。

A .循环游标

B .隐式游标

C. REF 游标 D .显式游标

21 、公用的子程序和常量在 < )中声明。

A .过程

B .游标

C .包规范

D .包主体

22、数据字典视图 < )包含存储过程的代码文本

A. USER_OBJECTS B . USER_TEXT

C. USER_SOURCE D . USER_DESC

23、以下不属于命名的 PL/SQL 块的是 < )。

A .程序包

B .过程

C .游标 D.函数

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

A.DBMS_OUTPUT

B.DBMS_STANDARD

C.DBMS_INPUT

D . DBMS_SESSION

25 、 Oracle 的内置程序包由 < )用户所有。

A. SYS B . SYSTEM

C. SCOTT D . PUBLIC

26、< )触发器允许触发操作中的语句访问行的列值。

A .行级 B.语句级

C .模式

D .数据库级

27、在非归档日志方式下操作的数据库禁用了< )。

A?归档日志

B ?联机日志

C ?日志写入程序

D.日志文件

28 、以下哪种备份方式需要在完全关闭数据库进行< )。

A?无归档日志模式下的数据库备份

B ?归档日志模式下的数据库备份

C ?使用导出实用程序进行逻辑备份

D .以上都不对

29、< )方式的导出会从指定的表中导出所有数据。

A .分区 B.表

C .全部数据库

D .表空间

30、< )参数用于确定是否要导入整个导出文件。

A. CONSTRAINTS B . TABLES

C. FULL D . FILE

二、填空题 <每空 2分,共 40 分)

1、假设已在某远程客户端完成网络服务名配置,服务名为aptech ,请写出用户 MARTIN< 用

户口令 martinpass )连接到服务器的命令:f0gZb36o7S

___ _Connect martin/martinpass@aptech ___ ;

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

进行查询的权限,请写出授权命令:<假设 MARTIN 用户已存在)f0gZb36o7S

____ Grant select on scott.emp to martin __ ________ ;f0gZb36o7S

3、创建表 employee 的副本,但不包含表中的记录:

CREATE TABLE employee_copy AS ___________________ Select * from employee where

1=2_ ___ ;f0gZb36o7S

4、查询 itemfile 表中 itemrate 列的信息,要求将数值转换为字符串,并使用当前货币符号作为

前缀:f0gZb36o7S

SELECT __ _ To_char_ _(itemrate,'C99999'> FROM itemfile ;f0gZb36o7S

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

0f0gZb36o7S

SELECT itemdesc, __ NVL _(re_level,0> FROM itemfile ;

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

FOR__ even_number___ IN __ 1..25 _

LOOP

DBMS_OUTPUT.PUT_LINE(even_number*2> ;

END LOOP

END ;

7、完成以下 PL/SQL 块,功能是:接受职员编号并检索职员姓名。将职员姓名存储在变

量 empname 中,如果代码引发 VALUE_ERROR 异常,则向用户显示错误消息。f0gZb36o7S

DELCARE

empname employee.ename%TYPE;; eno employee.empno%TYPE;

BEGIN

eno:= ' &employee_number

SELECT ename INTO empname FROM

empno=eno;___; f0gZb36o7S

DBMS_OUTPUT.PUT_LINE‘( 职员姓名: ' ||empname>; [9]

WHEN VALUE_ERROR THEN

DBMS_OUTPUT.PUT_LINE‘( 要存储在变量中的值过大 ' >

END;

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

DECLARE

my_toy_price toys.toyprice%TYPE;

CURSOR toy_cur IS

SELECT toyprice FROM toys

WHERE toyprice<250;

BEGIN

_______ [10] ______

LOOP

_______________ [11] _____________

EXIT WHEN toy_cur%NOTFOUND;

DBMS_OUTPUT.PUT_LINE (toy_cur%ROWCOUNT

my_toy_price>; f0gZb36o7S

END LOOP;

CLOSE toy_cur;

END;

9 、完成以下 PL/SQL 块,功能是:使用游标显示销售报表。如果目标销售额

售额 (asales> ,则显示消息“需提高销售额”。如果 tsales 等于 asales ,则显 示消息“已达到销售额”,否则显示消息“销售业绩出色” f0gZb36o7S DECLARE

CURSOR sales_cur IS SELECT * FROM salesdetails;

BEGIN __________________ [12] _____________

IF sales_rec.tsales > sales_rec.asales THEN

DBMS_OUTPUT.PUT_LINE(' 产品: '||sales_rec.pid||' 需提高销售额 '>;f0gZb36o7S ELSE IF _____________ [13] _____________ THEN

DBMS_OUTPUT.PUT_LINE(' 产品: '||sales_rec.pid||' 已达到销售额 '>;f0gZb36o7S ELSE

DBMS_OUTPUT.PUT_LINE(' 产 品 : ' ||sales_rec.pid||' 销 售 业 绩 出 色

'>;f0gZb36o7S

END IF;

END IF;

END LOOP;

END;

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

CREATE OR REPLACE PROCEDURE

swap(p1 IN OUT NUMBER, p2 _________ [14] ___ NUMBER 〉IS employee WHERE

250 元的玩具的单价。 || '. 玩 具 单 价 :' ||

v_temp NUMBER;

BEGIN

v_temp := p1;

pl := p2;

p2 := v_temp;

END;

11、完成以下 PL/SQL块,功能是:创建一个函数dept_name,其功能是接受职员编号后

返回职员所在部门名称。<注:部门名称在dept表中,而职员信息在 emp表中,职员所在

部门号的列名为 dept no ) f0gZb36o7S

CREATE OR REPLACE FUNCTION dept_ name (emp_ no NUMBER> f0gZb36o7S

RETURN VARCHAR2 AS

dept_ no NUMBER(2>; result dept.d name%TYPE;

BEGIN

____________________ [15] _________________________ __________ f0gZb36o7S

SELECT dn ame INTO result FROM dept

WHERE dept no = dept_no;

_______ [16] _________ ;

EXCEPTION

WHEN OTHERS THEN

RETURN NULL;

END;

12、要执行 pack_me包中的order_proc过程<有一个输入参数),假设参数值为’002

可以输入以下命令:f0gZb36o7S

EXECUTE ______________ [17] ___________________

13、完成以下PL/SQL块的功能是:创建一个触发器biu_job_emp,无论用户插入记录,

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

CREATE OR REPLACE TRIGGER biu_job_emp

__________________ [18] ________________

____________ [19] ______

BEGIN

:NEW.job := _____ [20] ____ ;

END;

答案

相关主题
文本预览
相关文档 最新文档