1、oracle数据库期末考试试题及答案A1、以下( )内存区不属于SGA。APGA B日志缓冲区 C数据缓冲区 D共享池D2、( )模式存储数据库中数据字典的表和视图。ADBA BSCOTT CSYSTEM DSYSC3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE关键字,则Oracle就将( )表空间分配给用户作为默认表空间。AHR BSCOTT CSYSTEM DSYSA4、( )服务监听并按受来自客户端应用程序的连接请求。AOracleHOME_NAMETNSListenerBOracleServiceSIDCOracleHOME_NAMEAgentDOracl
2、eHOME_NAMEHTTPServerB5、( )函数通常用来计算累计排名、移动平均数和报表聚合等。A汇总 B分析 C分组 D单行B6、( )SQL语句将为计算列SAL*12生成别名Annual SalaryASELECT ename,sal*12 Annual Salary FROM emp;BSELECT ename,sal*12 “Annual Salary” FROM emp;CSELECT ename,sal*12 AS Annual Salary FROM emp;DSELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM emp;
3、B7、锁用于提供( )。A改进的性能 B数据的完整性和一致性 C可用性和易于维护D用户安全C8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。A行共享 B行排他 C共享 D排他B9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。AFOR INSERT BFOR UPDATE CFOR DELETE DFOR REFRESHC10、使用( )命令可以在已分区表的第一个分区之前添加新分区。A添加分区 B截断分区C拆分分区 D不能在第一个分区前添加分区C11、( )分区允许用户明确地控制无序行到分区的映射。A散列 B范围 C列表 D复合C12、
4、可以使用( )伪列来访问序列。ACURRVAL和NEXTVAL BNEXTVAL和PREVALCCACHE和NOCACHE DMAXVALUE和MINVALUEA13、带有错误的视图可使用( )选项来创建。AFORCEBWITH CHECK OPTIONCCREATE VIEW WITH ERRORDCREATE ERROR VIEWB14、在联接视图中,当( )时,该基表被称为键保留表。A基表的主键不是结果集的主键B基表的主键是结果集的主键C基表的主键是结果集的外键D基表的主键不是结果集的外键D15、在列的取值重复率比较高的列上,适合创建( )索引。A标准 B唯一 C分区 D位图C16、要以
5、自身的模式创建私有同义词,用户必须拥有( )系统权限ACREATE PRIVATE SYNONYMBCREATE PUBLIC SYNONYMCCREATE SYNONYMDCREATE ANY SYNONYMD17、PL/SQL块中不能直接使用的SQL命令是( )。ASELECT BINSERTCUPDATE DDROPB18、以零作除数时会引发( )异常。AVALUE_ERROR BZERO_DIVIDECSTORAGE_ERROR DSELF_IS_NULLA19、要更新游标结果集中的当前行,应使用( )子句。AWHERE CURRENT OF BFOR UPDATECFOR DELET
6、E DFOR MODIFYB20、用于处理得到单行查询结果的游标为( )。A循环游标 B隐式游标CREF游标 D显式游标C21、公用的子程序和常量在( )中声明。A过程 B游标C包规范 D包主体C22、数据字典视图( )包含存储过程的代码文本AUSER_OBJECTS BUSER_TEXTCUSER_SOURCE DUSER_DESCC23、以下不属于命名的PL/SQL块的是( )。A程序包 B过程C游标 D函数A24、( )包用于显示PL/SQL块和存储过程中的调试信息。ADBMS_OUTPUTBDBMS_STANDARDCDBMS_INPUTDDBMS_SESSIONA25、Oracle的
7、内置程序包由( )用户所有。ASYS BSYSTEMCSCOTT DPUBLICA26、( )触发器允许触发操作中的语句访问行的列值。A行级 B语句级C模式 D数据库级A27、在非归档日志方式下操作的数据库禁用了( )。A归档日志 B联机日志C日志写入程序D日志文件A28、以下哪种备份方式需要在完全关闭数据库进行( )。A无归档日志模式下的数据库备份B归档日志模式下的数据库备份C使用导出实用程序进行逻辑备份D以上都不对B29、( )方式的导出会从指定的表中导出所有数据。A分区 B表C全部数据库 D表空间C30、( )参数用于确定是否要导入整个导出文件。ACONSTRAINTS BTABLESC
8、FULL DFILE二、填空题(每空2分,共40分)1、假设已在某远程客户端完成网络服务名配置,服务名为aptech,请写出用户MARTIN(用户口令martinpass)连接到服务器的命令: Connect martin/martinpassaptech2、SYS用户以管理员身份登录后,要授予用户MARTIN可以对SCOTT用户的EMP表进行查询的权限,请写出授权命令:(假设MARTIN用户已存在)Grant select on scott.emp to martin3、 创建表employee的副本,但不包含表中的记录:CREATE TABLE employee_copy AS selec
9、t * from employee where 1=24、查询itemfile表中itemrate列的信息,要求将数值转换为字符串,并使用当前货币符号作为前缀:SELECT to_char (itemrate,C99999) FROM itemfile;5、查itemfile表中itemdesc、re_level列的信息,要求re_level为NULL时显示为0SELECT itemdesc, NVL (re_level,0) FROM itemfile;6、完成以下PL/SQL块,功能是:显示2到50的25个偶数。BEGINFOR even_number IN 1.25LOOP DBMS_O
10、UTPUT.PUT_LINE(even_number*2);END LOOPEND;7、 完成以下PL/SQL块,功能是:接受职员编号并检索职员姓名。将职员姓名存储在变量empname中,如果代码引发VALUE_ERROR异常,则向用户显示错误消息。DELCARE empname employee.ename%TYPE; eno employee.empno%TYPE;BEGIN eno:=&employee_number; select ename into empname from employee where empno=eno DBMS_OUTPUT.PUT_LINE(职员姓名:|em
11、pname);exception WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE(要存储在变量中的值过大) END;8、完成以下PL/SQL块,功能是:使用游标,显示所有单价低于250元的玩具的单价。DECLARE my_toy_price toys.toyprice%TYPE; CURSOR toy_cur IS SELECT toyprice FROM toys WHERE toyprice sales_rec.asales THEN DBMS_OUTPUT.PUT_LINE(产品:|sales_rec.pid| 需提高销售额); ELSE IF sa
12、les_res.tsales=sales_res.asales THEN DBMS_OUTPUT.PUT_LINE(产品:|sales_rec.pid|已达到销售额); ELSE DBMS_OUTPUT.PUT_LINE(产品: |sales_rec.pid|销售业绩出色); END IF; END IF; END LOOP;END;10、完成以下PL/SQL块,功能是:创建一个交换两数的过程。CREATE OR REPLACE PROCEDUREswap(p1 IN OUT NUMBER, p2 in out NUMBER) IS v_temp NUMBER;BEGIN v_temp :=
13、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 dept.dname%TYPE;BEGIN Selecet deptno into dept_no from emp where empno
14、=emp_no SELECT dname INTO result FROM dept WHERE deptno = dept_no; Return resultEXCEPTION WHEN OTHERS THEN RETURN NULL;END;12、要执行pack_me包中的order_proc过程(有一个输入参数),假设参数值为002,可以输入以下命令:EXECUTE pack_ma.order-proc(002)13、完成以下PL/SQL块的功能是:创建一个触发器biu_job_emp,无论用户插入记录,还是修改EMP表的job列,都将用户指定的job列的值转换成大写。CREATE OR
15、 REPLACE TRIGGER biu_job_empBefore insert or update of job on empFor each rowBEGIN :NEW.job :=upper(;new.job)END;答案1A6B11C16C21C26A2D7B12C17D22C27A3C8C13A18B23C28A4A9B14B19A24A29B5B10C15D20B25A30C二、填空题(每空2分,共40分)1Connect martin/martinpassaptech2Grant select on scott.emp to martin3Select * from emplo
16、yee where 1=24To_char5NVL6even_number71.258SELECT ename INTO empname FROM employee WHERE empno=eno;9EXCEPTION10OPEN toy_cur11FETCH toy_cur INTO my_toy_price;12FOR sales_rec IN sales_cur LOOP13sales_rec.tsales = sales_rec.asales14IN OUT15SELECT deptno INTO dept_no FROM emp WHERE empno=emp_no;16RETURN result;17pack_ma.order_proc(002)18BEFORE INSERT OR UPDATE OF job ON emp19FOR EACH ROW20UPPER(:NEW.job)
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。