一、填空1、数据库模式定义为数据库对象的集合。
2、在安装Oracle 10g数据库时,需要指定全局数据库名,默认为orcl__。
3、Oracle的实例是由内存、和后台进程组成。
4、段是表空间中一种逻辑存储结构,在Oracle系统中有三种类型,分别是数据段、临时段、回滚段。
5、Oracle Data Pump进程可以分为两个阶段:准备阶段和执行段。
6、Oracle数据库主要的3种物理文件是控制文件、数据文件、和日志文件。
7、PL/SQL是基于Ada 编程语言的结构化编程语言。
8、PL/SQL标识符的最大长度为30 。
9、表空间是Oracle数据库中数据的逻辑组织,每个数据库至少有一个临时表空间。
10、视图是虚拟的表,它在物理上并不存在。
可以把它看成是一个存储的查询。
11、查看EMP表结构的SQL*PLUS命令是DESC ;显示EMP表所有数据的SQL语句是SELECT 。
12、ORACLE管理数据库存储空间的最小存储单位是数据块。
13、每个ORACLE数据库都由3种类型的文件组成:数据文件、日志文件、控制文件。
二、选择题1、PCTFREE与PCTUSED参数加起来不能超过(A )。
A.100 B.50 C.25 D.102、下面不属于Oracle 10g产品系列的是(D )A. Oracle 数据库10g标准版1B. Oracle数据库10g标准版C. Oracle 数据库10g企业版D. Oracle 数据库10g网络版3、SQL* Plus的文件操作命令中能将文件的内容调入SQL缓冲区的是(B )。
A.SAVE B.GET C.START D.SPOOL4、用下列什么命令可以执行SQL* Plus缓冲区中的一条SQL语句是(C )。
A.- B.& C./ D.Ctrl+D5、以下哪个内存区用于高速缓存数据字典信息(B )A.数据库缓冲区高速缓存 B. 共享池 C. 重做日志缓冲区 D. PGA6、下列描述中错误的是(A )A.程序全局区(PGA)可由所有用户进程共享B.Oracle使用表空间组织数据库,每个数据库至少有一个System表空间。
C.数据块是Oracle I/O操作的最小单元D.区间是由连续的数据块组成的。
7、关于表空间与数据文件的关系,下列哪些描述是对的(D )。
A.表空间与数据文件之间是多对多的关系B.一个表空间属于一个数据文件C.一个数据文件可以属于多个表空间D.每个表空间至少含有一个数据文件9、下面关于Oracle 10g用户口令错误的是(B )A. 口令不得以数字开头B. 口令可以与用户名相同C. 口令不得使用Oracle 的保留字D. 口令长度必须在4~~30个字符之间10、当数据库服务器上的一个数据库启动时,Oracle 将分配一块内存区间,叫做系统全局区,英文缩写为(B )A. VGAB. SGAC. PGAD.GLOBAL11、控制文件不包含哪些信息(A )A. 日志记录序列号B. 数据文件名称C. 表空间名称D. 重做日志文件名称12、有一个商品表,需要为该表的id列,产生一个有序的,唯一的连续整数,应该采用以下哪种方式创建?(B )A.VIEW B.SEQUENCE C.SYNONYM D.INDEX13、Oracle系统非正常关闭,重新启动数据库,执行数据库恢复操作的后台进程是(C )。
A.恢复进程B.检查点进程C.系统监控进程D.调度进程14、每个数据库至少要有几个重做日志文件(B )A.1个B.2个C.3个D.任意个15、下列哪一条语句将在教师基本信息表(teacher_info)的teacher_id列上建立一个主键约束PK_teacher_id (C )A. CREATE PRIMARY KEY ON teacher_info(teacher_id);B. CREATE CONSTRAINT PK_teacher_id PRIMARY KEY ON teacher_info(teacher_id);C. ALTER TABLE teacher_inof ADD CONSTRAINT PK_teacher_id PRIMARY KEY(teacher_id);D. ALTER TABLE teacher_info ADD PRIMARY KEY(teacher_id);16、SQL/Plus命令中,START emp.sql,和那个命令执行效果相同?(B )A.&emp.sql B.@ emp.sql C.GET emp.sql D.EXECUTE emp.sql18、用下列代码建立一个视图,对该视图允许做什么操作?(A )CREATE VIEW stud_viewAS SELECT * FROM stud_infoWHERE substr(stud_id,3,2)=‘01’WITH READ ONLY;A.SELECT B.SELECT,UPDATEC.SEELCT,DELETE D.SEELCT,INSERT19、下列代码中哪一行代码有错误(C )。
1)CREATE TABLE stud_score2)(stud_id CHAR(10),3)name VARCHAR2,4)score NUMBER);A.第1行B.第2行C.第3行D.第4行20、下列哪个文件用来记录应用程序对数据库的改变。
(D )A.数据文件B.控制文件C.INIT.ORA D.重做日志21、PL/SQL块中不能直接使用的SQL命令是(C )。
A.SELECT B.INSERT C.DROP D.UPDATE23、(A )函数返回大于或等于所给数字表达式的最小整数。
A. CEILB. ABSC. FLOORD. ROUND24、下列不属于Oracle表空间的是(D )。
A.大文件表空间B.系统表空间C.撤销表空间D.网格表空间25、以下哪个内存区不属于SGA?(B )A.数据库缓冲区高速缓存B.PGAC.重做日志缓冲区D.共享池26、在Oracle中,下列哪种类型不属于替换变量的类型?(D )A.&test B.&&test C.accept test prompt ’please input data’D.long27、ORACLE 10g不支持下面哪种操作系统(C )A.WINDOWS 2000 SP1 B.WINDOWS 2003C.WINDOWS NT D.WINDOWS XP31、下列哪个数据字典视图可以获得数据库中的所有用户信息。
(C )A.all_users B.users_users C.dba_users D.v$session33、ORACLE分配磁盘空间的最小单位是(B )A.数据块B.区间C.表D.表空间34、在Windows操作系统中,Oracle的(A )服务监听并接受来自客户端应用程序的连接请求。
A.Oracle HOME_NAMETNSListener B.OracleServiceSIDC.Oracle HOME_NAMEAgent D.Oracle HOME_NAMEHTTPServer35、当你执行以下查询语句:SELECT empno, ename FROM emp WHERE empno = 7782 OR empno =7876;在WHERE子句中,以下那个操作符可以取代OR?(D )A.<= B.BETWEEN C.LIKE D.IN36、在列的取值重复率比较高的列上,适合创建(C )索引。
A.标准B.唯一C.位图D.分区37、如果创建了一个名为USERPAG的程序包,程序包里包含名为test的过程,下列哪个是对这个过程的合法调用?( B )A.test(10) B.USERPAG. test(10) C.test. USERPAG D.test(10).USERPAG38、为了减少表中的链接记录和迁移记录,应该增大表的哪一个存储参数?(A )A.PCTFREE B.PCTUSED C.MAXEXTENTS D.PCTINCREASE39、段是表空间中一种逻辑存储结构,以下(B )不是ORACLE数据库使用的段类型。
A.索引段B.代码段C.临时段D.回滚段四、问答题1、Oracle系统的体系结构是什么?2、变量和常量的异同点是什么?3、解释日志写入器进程的特点和作用。
5、Oracle实例和数据库的概念和关系是什么?数据库,就是指保存与用户数据相关的各种文件,如数据文件、索引文件、日志文件等。
在Oracle中,还有控制文件、密码文件等。
Oracle实例:就是指管理这些文件的程序。
启动以后叫做进程,同时还需要分配内存。
6、影响oracle数据库性能的因素都有哪些?7、SGA的各个组成部分的名称和作用,PGA与它有什么区别?SGA包含三个部分:①共享池:提升了程序执行的效率;②日志缓冲区:提升了数据修改的效率;③数据缓冲区:提升了查询的效率。
区别:SGA内存是所有进程都可以访问的,而PGA中连接到Oracle的某个程序专用的。
五、程序设计1、请定义一个名为emp_cursor的游标,通过参数来指定职员编号(empno varchar2(20))为1001的职员的姓名(empname),并通过dbms_output打印出来。
set serveroutput ondeclarecursor emp_cursor(id varchar2(10)) --isselect empname from emp where empno=id;t_name emp.empname%type -beginopen emp_cursor (‘1001’); --loopfetch emp_cursor into t_name; --exit when emp_cursor % NOTFOUND; --dbms_output.putline(t_name); --end loop; -close emp_cursor; -end;/2、用CREATE PROCEDURE命令创建一个名为dept_update的存储过程,要求:1)给定一个部门的信息,修改该表中该部门的属性值。
2)调用该存储过程(调用参数为deptid=50,deptname=’开发部’,deptlocation=’新成立的部门’)。
dept表结构为:dept(deptid number, deptname varchar2(20),deptlocation varchar2(100))答:1)create or replaceprocedure dept_update(udepid in number, udeptname in varchar2, ulocation in varchar2) --asbeginupdate dept -set deptname=udeptname, deptlocation=udeptlocationwhere deptid =udeptid;end dept_update; --/2)调用:exec dept_update(‘50’, ‘开发部’, ‘新成立的部门’) /完成一个脚本文件temp.sql,执行该脚本实现的功能为:1)提示用户输入系统温度2)根据用户的温度输入,进行异常判断。