《Oracle期末考试试题及答案.pdf》由会员分享,可在线阅读,更多相关《Oracle期末考试试题及答案.pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、510152025301、以下()内存区不属于 SGA.APGAB日志缓冲区C数据缓冲区D共享池2、()模式存储数据库中数据字典的表和视图。ADBABSCOTTCSYSTEMDSYS3、在 Oracle 中创建用户时,若未提及 DEFAULT TABLESPACE关键字,则 Oracle 就将()表空间分配给用户作为默认表空间。AHRBSCOTTCSYSTEMDSYS4、()服务监听并按受来自客户端应用程序的连接请求。AOracleHOME_NAMETNSListenerBOracleServiceSIDCOracleHOME_NAMEAgentDOracleHOME_NAMEHTTPServ
2、er5、()函数通常用来计算累计排名、移动平均数和报表聚合等。A汇总B分析C分组D单行6、()SQL 语句将为计算列 SAL*12 生成别名 Annual SalaryASELECT ename,sal*12 Annual Salary FROM emp;BSELECT ename,sal*12“Annual Salary FROM emp;CSELECT ename,sal12 AS Annual Salary FROM emp;DSELECT ename,sal*12 AS INITCAP(“Annual Salary”)FROM emp;7、锁用于提供().A改进的性能B数据的完整性和一
3、致性C可用性和易于维护D用户安全8、()锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。A行共享B行排他C共享D排他9、带有()子句的 SELECT 语句可以在表的一行或多行上放置排他锁。AFOR INSERTBFOR UPDATECFOR DELETEDFOR REFRESH10、使用()命令可以在已分区表的第一个分区之前添加新分区。A添加分区B截断分区C拆分分区D不能在第一个分区前添加分区11、()分区允许用户明确地控制无序行到分区的映射。A散列B范围C列表D复合12、可以使用()伪列来访问序列。ACURRVAL和 NEXTVALBNEXTVAL和 PREVAL
4、CCACHE 和 NOCACHEDMAXVALUE和 MINVALUE13、带有错误的视图可使用()选项来创建。AFORCEBWITH CHECK OPTIONCCREATE VIEW WITH ERRORDCREATE ERROR VIEW14、在联接视图中,当()时,该基表被称为键保留表。A基表的主键不是结果集的主键B基表的主键是结果集的主键C基表的主键是结果集的外键D基表的主键不是结果集的外键15、在列的取值重复率比较高的列上,适合创建()索引。A标准B唯一C分区D位图16、要以自身的模式创建私有同义词,用户必须拥有()系统权限ACREATE PRIVATE SYNONYMBCREATE
5、 PUBLIC SYNONYMCCREATE SYNONYMDCREATE ANY SYNONYM17、PL/SQL 块中不能直接使用的SQL 命令是()。ASELECTBINSERTCUPDATEDDROP18、以零作除数时会引发()异常。AVALUE_ERRORBZERO_DIVIDECSTORAGE_ERRORDSELF_IS_NULL19、要更新游标结果集中的当前行,应使用()子句。AWHERE CURRENT OFBFOR UPDATECFOR DELETEDFOR MODIFY20、用于处理得到单行查询结果的游标为().A循环游标B隐式游标CREF 游标D显式游标21、公用的子程序
6、和常量在()中声明。A过程B游标C包规范D包主体22、数据字典视图()包含存储过程的代码文本AUSER_OBJECTSBUSER_TEXTCUSER_SOURCEDUSER_DESC23、以下不属于命名的PL/SQL 块的是().A程序包B过程C游标D函数24、()包用于显示 PL/SQL 块和存储过程中的调试信息。ADBMS_OUTPUTBDBMS_STANDARDCDBMS_INPUTDDBMS_SESSION25、Oracle 的内置程序包由()用户所有。ASYSBSYSTEMCSCOTTDPUBLIC26、()触发器允许触发操作中的语句访问行的列值.A行级B语句级C模式D数据库级27、
7、在非归档日志方式下操作的数据库禁用了()。A归档日志B联机日志C日志写入程序D日志文件28、以下哪种备份方式需要在完全关闭数据库进行().A无归档日志模式下的数据库备份B归档日志模式下的数据库备份C使用导出实用程序进行逻辑备份D以上都不对29、()方式的导出会从指定的表中导出所有数据.A分区B表C全部数据库D表空间30、()参数用于确定是否要导入整个导出文件。ACONSTRAINTSBTABLESCFULLDFILE二、填空题(每空二、填空题(每空 2 2 分,共分,共 4040 分)分)1、假设已在某远程客户端完成网络服务名配置,服务名为 aptech,请写出用户 MARTIN(用户口令 m
8、artinpass)连接到服务器的命令:_1_;2、SYS 用户以管理员身份登录后,要授予用户 MARTIN 可以对 SCOTT 用户的 EMP 表进行查询的权限,请写出授权命令:(假设 MARTIN 用户已存在)_2_;3、创建表 employee 的副本,但不包含表中的记录:CREATE TABLE employee_copy AS_ 3_;4、查询 itemfile 表中 itemrate 列的信息,要求将数值转换为字符串,并使用当前货币符号作为前缀:SELECT _4_(itemrate,C99999)FROM itemfile;5、查 itemfile 表中 itemdesc、re_
9、level 列的信息,要求 re_level 为 NULL 时显示为 0SELECT itemdesc,_5_(re_level,0)FROM itemfile;6、完成以下 PL/SQL 块,功能是:显示 2 到 50 的 25 个偶数。BEGINFOR_6_ IN _7_LOOPDBMS_OUTPUT。PUT_LINE(even_number2);END LOOPEND;7、完成以下 PL/SQL 块,功能是:接受职员编号并检索职员姓名。将职员姓名存储在变量empname 中,如果代码引发VALUE_ERROR异常,则向用户显示错误消息.DELCAREempname employee.en
10、ame%TYPE;enoemployee。empno%TYPE;BEGINeno:=employee_number;_8_;DBMS_OUTPUT.PUT_LINE(职员姓名:empname);_9_WHEN VALUE_ERROR THENDBMS_OUTPUT.PUT_LINE(要存储在变量中的值过大)END;8、完成以下 PL/SQL 块,功能是:使用游标,显示所有单价低于 250 元的玩具的单价.DECLAREmy_toy_price toys。toypriceTYPE;CURSOR toy_cur ISSELECT toyprice FROM toysWHERE toyprice25
11、0;BEGIN_10_LOOP_11_EXIT WHEN toy_cur%NOTFOUND;DBMS_OUTPUT.PUT_LINE(toy_cur%ROWCOUNT.玩具单价:|my_toy_price);END LOOP;CLOSE toy_cur;END;9、完成以下 PL/SQL 块,功能是:使用游标显示销售报表.如果目标销售额(tsales)大于实际销售额(asales),则显示消息“需提高销售额”。如果 tsales 等于 asales,则显示消息“已达到销售额”,否则显示消息“销售业绩出色”DECLARECURSOR sales_cur IS SELECT FROM salesd
12、etails;BEGIN_12_IF sales_rec.tsales sales_rec.asales THENDBMS_OUTPUT。PUT_LINE(产品:sales_rec。pid|需提高销售额);ELSEIF _13_THENDBMS_OUTPUT。PUT_LINE(产品:|sales_rec.pid|已达到销售额);ELSEDBMS_OUTPUT。PUT_LINE(产品:|sales_rec.pid销售业绩出色);END IF;END IF;END LOOP;END;10、完成以下 PL/SQL 块,功能是:创建一个交换两数的过程。CREATE OR REPLACE PROCEDU
13、REswap(p1 IN OUT NUMBER,p2 _14_ NUMBER)ISv_temp NUMBER;BEGINv_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 ASdept_no NUMBER(2);resultdept.
14、dnameTYPE;BEGIN_15_SELECT dname INTO result FROM deptWHERE deptno=dept_no;_16_;EXCEPTIONWHEN OTHERS THENRETURN NULL;END;12、要执行 pack_me 包中的 order_proc 过程(有一个输入参数),假设参数值为002,可以输入以下命令:EXECUTE _17_13、完成以下 PL/SQL 块的功能是:创建一个触发器 biu_job_emp,无论用户插入记录,还是修改 EMP 表的 job 列,都将用户指定的job 列的值转换成大写.CREATE OR REPLACE T
15、RIGGER biu_job_emp_18_19_BEGIN:NEW.job:=_20_;END;答案1A2D3C6B7B8C11C12C13A16C17D18B21C22C23C26A27A28A4A9B14B19A24A25A29B30C5B10C15D20B二、填空题(每空二、填空题(每空 2 2 分,共分,共 4040 分分)11223 34455667 7889910101111Connect martin/martinpassaptechConnect martin/martinpassaptechGrant select on scott.emp to martinGrant s
16、elect on scott.emp to martinSelectSelect from employee where 1=2from employee where 1=2To_charTo_charNVLNVLeven_numbereven_number1 1。2525SELECTSELECTenameenameINTOINTOempnameempnameFROMFROMemployeeemployeeWHEREWHEREempno=enoempno=eno;EXCEPTIONEXCEPTIONOPEN toy_curOPEN toy_curFETCH toy_cur INTO my_to
17、y_priceFETCH toy_cur INTO my_toy_price;1212FOR sales_rec IN sales_cur LOOPFOR sales_rec IN sales_cur LOOP1313sales_rec.tsales=sales_rec.asalessales_rec.tsales=sales_rec.asales1414IN OUTIN OUT1515161617171818SELECT deptno INTO dept_no FROM emp WHERE empno=emp_no;SELECT deptno INTO dept_no FROM emp WHERE empno=emp_no;RETURN resultRETURN result;pack_ma.order_proc(002pack_ma.order_proc(002)BEFORE INSERT OR UPDATE OF job ON empBEFORE INSERT OR UPDATE OF job ON emp1919FOR EACH ROWFOR EACH ROW2020UPPER(:NEW.job)UPPER(:NEW.job)