Oracle期末考试试题与答案

余年寄山水
947次浏览
2020年09月10日 12:00
最佳经验
本文由作者推荐

初中数学论文范文-生日快乐简谱



































线








































一、选择题:(本题共 20 个小题,每小题 2 分,共 40 分)

















1 当 Oracle 服务器启动时,下列哪种文件不是必须的


A. 数据文件

B. 控制文件

C. 日志文件

(

) 。

D.

归档日志文件

(




2. 在 Oracle 中,一个用户拥有的所有数据库对象统称为

A. 数据库


)。

B. 模式

C. 表空间

D.

实例













3.在 Oracle 数据库的逻辑结构中有以下组件:






1. 表空间



2. 数据块

3. 区

)。

4. 段






















这些组件从大到小依次是(

A. 1→2→3→4







B.1→4→3→2

C.1→3→2→4 D. 4→1→3→2

(

)。



BY



4.下列哪个子句实现对一个结果集进行分组和汇总



BY





5. 在 Oracle 数据库中, (


)用户模式存储数据字典表和视图对象。

C. SCOTT

)。

D.函数

D. SYSDBA

A. SYS



B. SYSTEM

6.以下不属于命名的 PLSQL 块的是 (



A .程序包



B.过程

C.游标

7.在 Oracle 中创建用户时,若未提及 DEFAULT TABLESPACE

关键字,则 Oracle

就将(


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

B. SCOTT

C.SYSTEM

D.SYS

A .HR



















第1页共6页






8.在 Windows 操作系统中, Oracle 的(


)服务是使用 iSQL*Plus 必须的。

B. OracleServiceSID

D. OracleHOME_NAMEHTTPServer

A .OracleHOME_NAMETNSListener


C. OracleHOME_NAMEAgent



9.下列哪个语句可以在 SQL*Plus 中直接调用一个过程 (

A. RETURN



)。

B. CALL

C. SET

D. EXEC

10.如果服务器进程无法在数据缓冲区中找到空闲块,为添加从数 据文件中读出的数据块,则系统会

启动如下哪一个进程 (


)



)。

D.共享锁

)

D. SMON





B. DBWR

11.下列哪一个锁模式不属于 Oracle(

A. 死锁



B.排他锁

C.行级共享锁

12.有字符串数据” test”分别存放到 char(10)和 varchar2(10)类型的字段中,其实际存储长度为 (

A.10 4

B.4 4

C. 10

10

D. 4

10


13.在 Oracle 中,当控制一个显式游标时,下面哪种命令包含

A. FETCH

B. CLOSE


INTO 子句 (

D. CURSOR








)。

C. OPEN

14. ORACLE 中,用来判断列值是否为空的操作符是 (

A. ==NULL

B. NULLIS


C. AS NULL

)统计函数。

C. COUNT(*)



)。


D. IS NULL


15.查询一个表的总记录数,可以采用 (

A. AVG(*)

B. SUM(*)


D. MAX(*)

)。


16.以下的哪个命令可以将 SQL

命令的运行结果保存到文件中 (











17.为了去除结果集中重复的行,可在 SELECT

语句中使用下列哪个关键字 (



CT



)。



) 。






















18.关于模式的描述下列哪一项不正确 (

A. 表或索引等模式对象一定属于某一个模式

B.在 Oracle 数据库中,模式与数据库用户是一一对应的

C.一个表可以属于多个模式

D.一个模式可以拥有多个表







19.下列 SELECT 语句中,哪些子句可以包含子查询 (





)。


BY



BY

(

)。

20.在下列模式对象中,哪个对象不会占用实际的存储空间

A. 视图




B.表

C.索引

D.簇

第2页共6页










二、填空题(共 8 小题, 10 空需要填写,每空 1 分,共 10 分)



1. __________是具有名称的一组相关权限的组合。

2. 一个表空间物理上对应一个或多个 __________文件。

3.标准的 SQL 语言语句类型可以分为:

__________、数据操纵语句( DML )和 __________。


4. 如果需要向表中插入一批已经存在的数据,可以在


INSERT 语句中使用 __________ 语句。

5.通过视图修改数据时,实际上是在修改



__________中的数据。

6.如果需要向表中插入一批已经存在的数据,可以在


INSERT 语句中使用 __________语句。

________,用于持久化事务对数据库操作

7.在众多的事务控制语句中,用来撤销事务的操作的语句为

的语句是 ________。


8. 在多进程 Oracle 实例系统中,进程分为 ________、后台进程和服务器进程。

三、程序填空(共 10 小题, 10 空需要填写,每空 3 分,共 30 分)



1. 假设当前用户是 SCOTT用户以普通用户登录, 口令为 tiger,请写出该用户以管理员身份登录的命令




2.假设用户 SCOTT以管理员身份登录,现需创建用户 Lisa,口令是 Lisa,请写出相应的命令





3. 假设用户 SCOTT以管理员身份登录,已知用户账号 Lisa被锁定,需为他解除锁定,请 写出相应的命
令_______________________________________ ____;

4. 假设用户 SCOTT以管理员身份登录,需授予用户 Lisa对SCOTT用户模式下的 EMP表进行查询

(SELECT) 的权限,请写出相应的命令




5. 假设用户 SCOTT以管理员身份登录, 在SQL Plus的SQL> 提示符下,希望用户 Lisa用Lisa以普通
用户身份登录到系统,请写出相应的命令 ________________________;

6.

假设用户 Lisa用 Lisa以普通用户身份登录到系统,现需查看本用户下的

Class表的结构,请写出相


的命令 ___________________________________________;


select * from Class查询 Class表中的数
7.

假设用户 Lisa用 Lisa以普通用户身份登录到系统,用命令

据,


现需将缓冲区中的 SQL 命令保存到 C盘根目录下的 文件中 , 请写出相应的命令


_________________________________________ __;


8. 假设用户 Lisa用 Lisa以普通用户身份登录到系统,现需查看本用户下有哪些表,请写出相应的命令

__ _________________________________________;




第3页共6页







9. 假设用户 Lisa用 Lisa以普通用户身份登录到系统, 现需为 Class 表的 ID 列添加一
个名为 PK_CLASS_ID 的主键约束,请补充完整相应的命令

ALTER TABLE Class


________________________;


10. 假设用户 Lisa用Lisa以普通用户身份登录到系统,现需创建一个 UPDATE 语句来
修改本用户下 ARTISTS 表中的数据,并且把每一行的 T_ID 值都改成 15,应该使用

的SQL 语句是 ________________________ ;


四、 编程题:(本题共 2 小题,每题 10 分,共 20 分)



1. 请按要求完成以下程序的编写。 (5空,每空 2分,共 10分)

以下存储过程借助游标用于实现对员工工资

(Sal)的调整,调整方案为:对于员工号


(empno)在7000到7200间的员工,若其原工资在 1000之下,则加薪 20%。


(1) 请完成以下程序:

CREATE OR REPLACE PROCEDURE Rise_sal


IS


v_empno

%type;


v_sal

%type;


V_ErrorText

Varchar(200);


CURSOR cursor_sal 定义游标 CURSOR cursor_sal


IS


_______①_______




BEGIN


______② ________;

打开游标


LOOP


FETCH cursor_sal _____③ _______;


EXIT WHEN cursor_sal%NOTFOUND; 逐行提取数据


IF v_sal<1500 THEN


UPDATE Emp SET sal= sal*0.20+Sal

更新数据


END LOOP;








第4页共6页
















































































线










CLOSE cursor_sal;

关闭游标


_____④______;

提交事务


Exception



When others THEN


CLOSE cursor_sal;关闭游标


rollback;

回滚事务


v_Errortext:='游标使用错误 ';



dbms__line('程序异常终止,出现以下错误: '||v_Errortext);




线

END;


(2) 假设用户已登录

SQL Plus 系统,处于 “ SQL>_”命令提示符下,现需执行存储






过程 Rise_sal,请写出命令: _______⑤___________




2. 创建一个函数 get_sal,用于实现对表 Emp(如下图 )给定一个员工号 (Empno),


通过函数获取该雇员的工资值


,请完成以下程序。



































(1)请将函数 get_sal补充完整 (3 空,每空 2 分,共 6 分)




CREATE OR REPLACE FUNCTION get_sal





(v_emp_no IN %TYPE)





______________


IS


______________ %TYPE: =0;



BEGIN



SELECT sal


INTO v_emp_sal



FROM emp








第5页共6页







WHERE empno=______________;


RETURN(v_emp_sal);


END get_sal;


(2)用函数 get_sal查询员工 7521 号的工资,请写出一种查询方式。 (4 分)




































































































第6页共6页

















课程名称














一、选择题:(本题共

20 小题,每题 2 分,共 40 分)

题号

答案

题号

答案

1

D

11

A

2

B

12

A

3

B

13

A

4

D

14

C

5

A

15

C

题号6

答案

题号

答案B

C

16

7

C

17

B


8

B

18

C



9

D

19

C





















10

D

20

A

二、填空题(本大题共

8 小题, 10 空,每空 1 分,共 10 分)

题号

1-2

3

4

5-6

7

8


























角色


数据


数据定义语句( DDL)






数据控制语句( DCL)






select






基本表


ROLLBACK


select

COMMIT




用户进程


三、程序填空题(共 10 小题, 10 空需要填写,每空

题号

1

2

3

4

5

6

7

8

9











3 分,共 30 分)
































































conn scotttiger as sysdba;

create user Lisa identify by Lisa

alter user Lisa account unlock;

grant select on emp to Lisa;





conn LisaLisa;

desc Class;

save

C:




select table_name from user_tables;

Add constraint PK_CLASS_ID PRIMARY KEY(ID) ;


10

update artists set

T_ID
=15;


第7页共2页








四、编程题(本大题共 2 小题,每题 10 分,共 20 分)



1
. (5空,每空

2分,共

10分)





(1)SELECT

FROM

WHERE

empno,sal

employee

empno BETWEEN 7300 AND 7600;









(2) OPEN cursor_sal
(3) INTO v_empno,v_sal
(4) COMMIT;
(5) EXEC Rise_sal;
2. (1)请将函数 get_sal 补充完整 (3 空,每空 2 分,共 6 分)
RETURN NUMBER

v_emp_sal

v_emp_no

(2) 用函数 get_sal查询员工 7521 号的工资,请写出一种查询方式。 (4 分)
Select get_sal (7521)
from dual;






























































第8页共2页

日本大地震时间-2011高考成绩


植树节手抄报图片-外国诗两首


这件事感动了我作文-高考成绩分数线


江西应用职业学院-食品安全宣传资料


写给老师的一封信-长沙出国留学


池州职业技术学院-2014二级建造师试题及答案


麻省理工学院分数线-安徽师范大学研究生院


绿豆发芽观察日记7天-督导论文