oracle数据库期末考试试题及复习资料.docx
- 文档编号:14683934
- 上传时间:2023-06-26
- 格式:DOCX
- 页数:12
- 大小:20.40KB
oracle数据库期末考试试题及复习资料.docx
《oracle数据库期末考试试题及复习资料.docx》由会员分享,可在线阅读,更多相关《oracle数据库期末考试试题及复习资料.docx(12页珍藏版)》请在冰点文库上搜索。
oracle数据库期末考试试题及复习资料
oracle数据库期末考试试题及答案
A1、以下()内存区不属于SGA。
A.PGAB.日志缓冲区C.数据缓冲区D.共享池
D2、()模式存储数据库中数据字典的表和视图。
A.DBAB.SCOTTC.SYSTEMD.SYS
C3、在Oracle中创建用户时,若未提及DEFAULTTABLESPACE关键字,则Oracle就将()表空间分配给用户作为默认表空间。
A.HRB.SCOTTC.SYSTEMD.SYS
A4、()服务监听并按受来自客户端应用程序的连接请求。
A.OracleHOME_NAMETNSListener
B.OracleServiceSID
C.OracleHOME_NAMEAgent
D.OracleHOME_NAMEHTTPServer
B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。
A.汇总B.分析C.分组D.单行
B6、()SQL语句将为计算列SAL*12生成别名AnnualSalary
A.SELECTename,sal*12‘AnnualSalary'FROMemp;
B.SELECTename,sal*12“AnnualSalary”FROMemp;
C.SELECTename,sal*12ASAnnualSalaryFROMemp;
D.SELECTename,sal*12ASINITCAP(“AnnualSalary”)FROM
12
/1
emp;
B7、锁用于提供()。
A.改进的性能
B.数据的完整性和一致性
C.可用性和易于维护
D.用户安全
C8、()锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。
A.行共享B.行排他C.共享D.排他
B9、带有()子句的SELECT语句可以在表的一行或多行上放置排他锁。
A.FORINSERTB.FORUPDATE
C.FORDELETED.FORREFRESH
C10、使用()命令可以在已分区表的第一个分区之前添加新分区。
A.添加分区B.截断分区
C.拆分分区D.不能在第一个分区前添加分区
C11、()分区允许用户明确地控制无序行到分区的映射。
A.散列B.范围C.列表D.复合
C12、可以使用()伪列来访问序列。
A.CURRVAL和NEXTVALB.NEXTVAL和PREVAL
C.CACHE和NOCACHED.MAXVALUE和MINVALUE
A13、带有错误的视图可使用()选项来创建。
12
/2
A.FORCE
B.WITHCHECKOPTION
C.CREATEVIEWWITHERROR
D.CREATEERRORVIEW
B14、在联接视图中,当()时,该基表被称为键保留表。
A.基表的主键不是结果集的主键
B.基表的主键是结果集的主键
C.基表的主键是结果集的外键
D.基表的主键不是结果集的外键
D15、在列的取值重复率比较高的列上,适合创建()索引。
A.标准B.唯一C.分区D.位图
C16、要以自身的模式创建私有同义词,用户必须拥有()系统权限
A.CREATEPRIVATESYNONYM
B.CREATEPUBLICSYNONYM
C.CREATESYNONYM
D.CREATEANYSYNONYM
D17、PL/SQL块中不能直接使用的SQL命令是()。
A.SELECTB.INSERT
C.UPDATED.DROP
B18、以零作除数时会引发()异常。
A.VALUE_ERRORB.ZERO_DIVIDE
12
/3
C.STORAGE_ERRORD.SELF_IS_NULL
A19、要更新游标结果集中的当前行,应使用()子句。
A.WHERECURRENTOFB.FORUPDATE
C.FORDELETED.FORMODIFY
B20、用于处理得到单行查询结果的游标为()。
A.循环游标B.隐式游标
C.REF游标D.显式游标
C21、公用的子程序和常量在()中声明。
A.过程B.游标
C.包规范D.包主体
C22、数据字典视图()包含存储过程的代码文本
A.USER_OBJECTSB.USER_TEXT
C.USER_SOURCED.USER_DESC
C23、以下不属于命名的PL/SQL块的是()。
A.程序包B.过程
C.游标D.函数
A24、()包用于显示PL/SQL块和存储过程中的调试信息。
A.DBMS_OUTPUT
B.DBMS_STANDARD
C.DBMS_INPUT
D.DBMS_SESSION
A25、Oracle的内置程序包由()用户所有。
12
/4
A.SYSB.SYSTEM
C.SCOTTD.PUBLIC
A26、()触发器允许触发操作中的语句访问行的列值。
A.行级B.语句级
C.模式D.数据库级
A27、在非归档日志方式下操作的数据库禁用了()。
.归档日志AB.联机日志C.日志写入程序D.日志文件。
)、以下哪种备份方式需要在完全关闭数据库进行(A28A.无归档日志模式下的数据库备份B.归档日志模式下的数据库备份C.使用导出实用程序进行逻辑备份.以上都不对D()方式的导出会从指定的表中导出所有数据。
B29、.表B.分区A
C.全部数据库D.表空间)参数用于确定是否要导入整个导出文件。
C30、(
TABLESB.CONSTRAINTSA.
FILE.D.CFULL
二、填空题(每空分)402分,共12
/5
1、假设已在某远程客户端完成网络服务名配置,服务名为aptech,请写出用户MARTIN(用户口令martinpass)连接到服务器的命令:
Connectmartin/martinpass@aptech
2、SYS用户以管理员身份登录后,要授予用户MARTIN可以对SCOTT用户的EMP表进行查询的权限,请写出授权命令:
(假设MARTIN用户已存在)
Grantselectonscott.emptomartin
3、创建表employee的副本,但不包含表中的记录:
CREATETABLEemployee_copyASselect*fromemployee
where1=2
4、查询itemfile表中itemrate列的信息,要求将数值转换为字符串,并使用当前货币符号作为前缀:
SELECTto_char(itemrate,'C99999')FROMitemfile;
5、查itemfile表中itemdesc、re_level列的信息,要求re_level为NULL时显示为0
SELECTitemdesc,NVL(re_level,0)FROMitemfile;
6、完成以下PL/SQL块,功能是:
显示2到50的25个偶数。
BEGIN
FOReven_numberIN1..25
LOOP
12
/6
DBMS_OUTPUT.PUT_LINE(even_number*2);
ENDLOOP
END;
7、完成以下PL/SQL块,功能是:
接受职员编号并检索职员姓名。
将职员姓名存储在变量empname中,如果代码引发VALUE_ERROR异常,则向用户显示错误消息。
DELCARE
empnameemployee.ename%TYPE;;
enoemployee.empno%TYPE;
BEGIN
eno:
='&employee_number';
selectenameintoempnamefromemployeewhere
empno=eno
DBMS_OUTPUT.PUT_LINE(‘职员姓名:
'||empname);
exception
WHENVALUE_ERRORTHEN
DBMS_OUTPUT.PUT_LINE(‘要存储在变量中的值过大')
END;
8、完成以下PL/SQL块,功能是:
使用游标,显示所有单价低于250元的玩具的单价。
DECLARE
my_toy_pricetoys.toyprice%TYPE;
12
/7
CURSORtoy_curIS
SELECTtoypriceFROMtoys
WHEREtoyprice<250;
BEGIN
Opentoy_cur
LOOP
Fetchtoy_curintomy_toy_price
EXITWHENtoy_cur%NOTFOUND;
玩DBMS_OUTPUT.PUT_LINE(toy_cur%ROWCOUNT||'.
:
'||my_toy_price);具单价ENDLOOP;
CLOSEtoy_cur;
END;
块,功能是:
使用游标显示销售报表。
如果目PL/SQL9、完成以下,则显示消息“需提)大于实际销售额(asales)标销售额(tsales,则显示消息“已达到销售asales等于高销售额”。
如果tsales,否则显示消息“销售业绩出色”额”DECLARE
CURSORsales_curISSELECT*FROMsalesdetails;
BEGIN
Forsales_resinsales_curloop
IFsales_rec.tsales>sales_rec.asalesTHEN
12
/8
需提'||sales_rec.pid||'产品:
DBMS_OUTPUT.PUT_LINE('
');高销售额ELSE
THEN
sales_res.tsales=sales_res.asalesIF
'||sales_rec.pid||'产品:
DBMS_OUTPUT.PUT_LINE('
');已达到销售额ELSE
'||sales_rec.pid||'产品:
DBMS_OUTPUT.PUT_LINE('
');销售业绩出色ENDIF;
ENDIF;
ENDLOOP;
END;
PL/SQL块,功能是:
创建一个交换两数的过程。
10、完成以下CREATEORREPLACEPROCEDURE
inoutsINOUTNUMBER,p2NUMBER)IS
v_tempNUMBER;
BEGIN
v_temp:
=p1;
p1:
=p2;
p2:
=v_temp;
END;
12
/9
,其dept_name、完成以下PL/SQL块,功能是:
创建一个函数11dept部门名称在功能是接受职员编号后返回职员所在部门名称。
(注:
)表中,职员所在部门号的列名为deptno表中,而职员信息在emp(emp_nodept_nameREPLACEFUNCTIONCREATEOR
NUMBER)
RETURNVARCHAR2AS
dept_noNUMBER
(2);
dept.dname%TYPE;result
BEGIN
where
from
emp
deptno
into
dept_no
Selecet
empno=emp_no
SELECTdnameINTOresultFROMdept
WHEREdeptno=dept_no;
Returnresult
EXCEPTION
WHENOTHERSTHEN
RETURNNULL;
END;
,过程(有一个输入参数)pack_me、要执行包中的order_proc12,可以输入以下命令:
假设参数值为'002'EXECUTEpack_ma.order-proc(‘002')
13、完成以下PL/SQL块的功能是:
创建一个触发器biu_job_emp,12
/10
都将用户指定的列,表的job无论用户插入记录,还是修改EMP列的值转换成大写。
jobCREATEORREPLACETRIGGERbiu_job_emp
Beforeinsertorupdateofjobonemp
Foreachrow
BEGIN
:
NEW.job:
=upper(;new.job)
END;
答案
AB1C1C2C2A
27.7.BC12.C.17.DA22D2.28.8.C23..13ACAB18.3C.29.9B.A.B14.19.A4.AB243010.20.B
..15B
.5D
25A
.C
C
二、填空题(每空2分,共40分)
[1]Connectmartin/martinpass@aptech
Grantselectonscott.emptomartin[2]
Select*fromemployeewhere1=2[3]
To_char[4]
NVL
[5]
even_number[6]
1..25
[7]
SELECTenameINTOempnameFROMemployeeWHEREempno=eno;[8]
EXCEPTION
[9]
[10]OPENtoy_cur
[11]FETCHtoy_curINTOmy_toy_price;
[12]FORsales_recINsales_curLOOP
[13]sales_rec.tsales=sales_rec.asales
12
/11INOUT
[14]
SELECTdeptnoINTOdept_noFROMempWHEREempno=emp_no;[15]
RETURNresult;[16]
pack_ma.order_proc(‘002')[17]
BEFOREINSERTORUPDATEOFjobONemp[18]
FOREACHROW[19]
UPPER(:
NEW.job)[20]
12
/12
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 数据库 期末考试 试题 复习资料