oracle数据库期末考试试题及答案剖析

oracle数据库期末考试试题及答案剖析
oracle数据库期末考试试题及答案剖析

oracle数据库期末考试试题及答案

A1、以下()内存区不属于SGA。

A.PGA B.日志缓冲区C.数据缓冲区D.共享池

D2、()模式存储数据库中数据字典的表和视图。

A.DBA B.SCOTT C.SYSTEM D.SYS

C3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE 关键字,则Oracle就将()表空间分配给用户作为默认表空间。

A.HR B.SCOTT C.SYSTEM D.SYS

A4、()服务监听并按受来自客户端应用程序的连接请求。

A.OracleHOME_NAMETNSListener

B.OracleServiceSID

C.OracleHOME_NAMEAgent

D.OracleHOME_NAMEHTTPServer

B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。

A.汇总B.分析C.分组D.单行

B6、()SQL语句将为计算列SAL*12生成别名Annual Salary A.SELECT ename,sal*12 ‘Annual Salary’ FROM emp;

B.SELECT ename,sal*12 “Annual Salary” FROM emp;

C.SELECT ename,sal*12 AS Annual Salary FROM emp;

D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM

emp;

B7、锁用于提供( )。

A.改进的性能

B.数据的完整性和一致性

C.可用性和易于维护

D.用户安全

C8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。

A.行共享B.行排他C.共享D.排他

B9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。

A.FOR INSERT B.FOR UPDATE

C.FOR DELETE D.FOR REFRESH

C10、使用( )命令可以在已分区表的第一个分区之前添加新分区。

A.添加分区B.截断分区

C.拆分分区D.不能在第一个分区前添加分区

C11、( )分区允许用户明确地控制无序行到分区的映射。

A.散列B.范围C.列表D.复合

C12、可以使用()伪列来访问序列。

A.CURRVAL和NEXTVAL B.NEXTVAL和PREVAL

C.CACHE和NOCACHE D.MAXVALUE和MINVALUE A13、带有错误的视图可使用()选项来创建。

A.FORCE

B.WITH CHECK OPTION

C.CREATE VIEW WITH ERROR

D.CREATE ERROR VIEW

B14、在联接视图中,当()时,该基表被称为键保留表。

A.基表的主键不是结果集的主键

B.基表的主键是结果集的主键

C.基表的主键是结果集的外键

D.基表的主键不是结果集的外键

D15、在列的取值重复率比较高的列上,适合创建()索引。

A.标准B.唯一C.分区D.位图

C16、要以自身的模式创建私有同义词,用户必须拥有()系统权限

A.CREATE PRIVATE SYNONYM

B.CREATE PUBLIC SYNONYM

C.CREATE SYNONYM

D.CREATE ANY SYNONYM

D17、PL/SQL块中不能直接使用的SQL命令是()。

A.SELECT B.INSERT

C.UPDATE D.DROP

B18、以零作除数时会引发()异常。

A.VALUE_ERROR B.ZERO_DIVIDE

C.STORAGE_ERROR D.SELF_IS_NULL

A19、要更新游标结果集中的当前行,应使用()子句。

A.WHERE CURRENT OF B.FOR UPDATE

C.FOR DELETE D.FOR MODIFY

B20、用于处理得到单行查询结果的游标为()。

A.循环游标B.隐式游标

C.REF游标D.显式游标

C21、公用的子程序和常量在()中声明。

A.过程B.游标

C.包规范D.包主体

C22、数据字典视图()包含存储过程的代码文本A.USER_OBJECTS B.USER_TEXT

C.USER_SOURCE D.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的内置程序包由()用户所有。

A.SYS B.SYSTEM

C.SCOTT D.PUBLIC

A26、()触发器允许触发操作中的语句访问行的列值。

A.行级B.语句级

C.模式D.数据库级

A27、在非归档日志方式下操作的数据库禁用了()。

A.归档日志

B.联机日志

C.日志写入程序

D.日志文件

A28、以下哪种备份方式需要在完全关闭数据库进行()。

A.无归档日志模式下的数据库备份

B.归档日志模式下的数据库备份

C.使用导出实用程序进行逻辑备份

D.以上都不对

B29、()方式的导出会从指定的表中导出所有数据。

A.分区B.表

C.全部数据库D.表空间

C30、()参数用于确定是否要导入整个导出文件。

A.CONSTRAINTS B.TABLES

C.FULL D.FILE

二、填空题(每空2分,共40分)

1、假设已在某远程客户端完成网络服务名配置,服务名为aptech,

请写出用户MARTIN(用户口令martinpass)连接到服务器的命令:

Connect martin/martinpass@aptech

2、SYS用户以管理员身份登录后,要授予用户MARTIN可以对

SCOTT用户的EMP表进行查询的权限,请写出授权命令:(假设MARTIN用户已存在)

Grant select on scott.emp to martin

3、创建表employee的副本,但不包含表中的记录:

CREATE TABLE employee_copy AS select * from employee where 1=2

4、查询itemfile表中itemrate列的信息,要求将数值转换为字符串,

并使用当前货币符号作为前缀:

SELECT to_char (itemrate,'C99999') FROM itemfile;

5、查itemfile表中itemdesc、re_level列的信息,要求re_level为NULL时显示为0

SELECT itemdesc, NVL (re_level,0) FROM itemfile;

6、完成以下PL/SQL块,功能是:显示2 到50的25个偶数。

BEGIN

FOR even_numbe r IN 1..25

LOOP

DBMS_OUTPUT.PUT_LINE(even_number*2);

END LOOP

END;

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(‘职员姓名:’||empname);

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<250;

BEGIN

Open toy_cur

LOOP

Fetch toy_cur into my_toy_price

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,则显示消息“已达到销售额”,否则显示消息“销售业绩出色”

DECLARE

CURSOR sales_cur IS SELECT * FROM salesdetails;

BEGIN

For sales_res in sales_cur loop

IF sales_rec.tsales > sales_rec.asales THEN

DBMS_OUTPUT.PUT_LINE('产品:'||sales_rec.pid||' 需提高销售额');

ELSE

IF sales_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 PROCEDURE

swap(p1 IN OUT NUMBER, p2in out NUMBER) IS

v_temp NUMBER;

BEGIN

v_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 AS

dept_no NUMBER(2);

result dept.dname%TYPE;

BEGIN

Selecet deptno into dept_no from emp where empno=emp_no

SELECT dname INTO result FROM dept

WHERE deptno = dept_no;

Return result

EXCEPTION

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 REPLACE TRIGGER biu_job_emp

Before insert or update of job on emp

For each row

BEGIN

:NEW.job :=upper(;new.job)

END;

二、填空题(每空2分,共40分)

中南大学oracle数据库期末考试试题及答案

A1、以下()内存区不属于SGA。 A.PGA B.日志缓冲区C.数据缓冲区D.共享池 D2、()模式存储数据库中数据字典的表和视图。 A.DBA B.SCOTT C.SYSTEM D.SYS C3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE 关键字,则Oracle就将()表空间分配给用户作为默认表空间。 A.HR B.SCOTT C.SYSTEM D.SYS A4、()服务监听并按受来自客户端应用程序的连接请求。 A.OracleHOME_NAMETNSListener B.OracleServiceSID C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。 A.汇总B.分析C.分组D.单行 B6、()SQL语句将为计算列SAL*12生成别名Annual Salary A.SELECT ename,sal*12 …Annual Salary? FROM emp; B.SELECT ename,sal*12 “Annual Salary” FROM emp; C.SELECT ename,sal*12 AS Annual Salary FROM emp; D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM emp; B7、锁用于提供( )。 A.改进的性能

B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全 C8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。 A.行共享B.行排他C.共享D.排他 B9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。 A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH C10、使用( )命令可以在已分区表的第一个分区之前添加新分区。 A.添加分区B.截断分区 C.拆分分区D.不能在第一个分区前添加分区 C11、( )分区允许用户明确地控制无序行到分区的映射。 A.散列B.范围C.列表D.复合 C12、可以使用()伪列来访问序列。 A.CURRVAL和NEXTVAL B.NEXTVAL和PREVAL C.CACHE和NOCACHE D.MAXVALUE和MINVALUE A13、带有错误的视图可使用()选项来创建。 A.FORCE B.WITH CHECK OPTION C.CREATE VIEW WITH ERROR

Oracle数据库试题及答案

Oracle数据库试题 一、选择题 1、段是表空间中一种逻辑存储结构,以下( D )不是ORACLE数据库使用的段类型。(A)索引段(B)临时段(C)回滚段(D)代码段 2、 ORACLE数据库物理结构包括以下三种文件,以下不属于的是( A )。 ?(A)系统文件(B)日志文件(C)数据文件(D)控制文件 3、数据库中有两个用户scott和muuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是( C ) (A)select*from scott.wz where wunit is null and rownum<5; (B)select*from myuser.wz where wunit = null and rownum<5; (C) select*from myuser.wz where wunit is null and rownum<6; (D)select*form scott.wz where wunit is null and rownum<6; ?4、若当前日期为’25-5月-06’,以下( D? )表达式能计算出5个月后那一天所在月份的最后一天的日期。 (A)NEXT_DAY(ADD_MONTHS(28-5月-06,5)) (B)NEXT_DAY(MONTHS_BETWEEN(28-5月-06,5)) (C)NEXT_DAY(MONTHS_BETWEEN(’28-5月-06’,5)) (D)NEXT_DAY(ADD_MONTHS(’28-5月-06’,5)) 5、下列叙述中正确的是_C_。 A、数据库是一个独立的系统,不需要操作系统的支持 B、数据库设计是指设计数据库管理系统 C、数据库技术的根本目标是要解决数据共享的问题 D、数据库系统中,数据的物理结构必须与逻辑结构一致 6、SQL语句中修改表结构的命令是 ???C?? ?。 A、MODIFY TABLE B、MODIFY STRUCTURE C、ALTER TABLE D、ALTER STRUCTURE 7、数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是__ A___。 A、DBS包括DB和DBMS B、DBMS包括DB和DBS C、DB包括DBS和DBMS D、DBS就是DB,也就是DBMS 8、要控制两个表中数据的完整性和一致性可以设置"参照完整性",要求这两个表_A___。 A、是同一个数据库中的两个表 B、不同数据库中的两个表 C、两个自由表 D、一个是数据库表另一个是自由表 9、在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过__B_ __。 A、候选键 B、主键 C、外键 D、超键 10、索引字段值不唯一,应该选择的索引类型为___ B__。 A、主索引 B、普通索引 C、候选索引 D、唯一索引 11、从数据库中删除表的命令是___C __。 A、DROP TABLE B、ALTER TABLE C、DELETE TABLE D、USE 12、 DELETE FROM S WHERE 年龄>60语句的功能是___B___。 A、从S表中彻底删除年龄大于60岁的记录 B、S表中年龄大于60岁的记录被加上删除标记

ORACLE试题

ORACLE 选择 B52X0001ORACLE7数据库中,命令lsnrctl start用到的参数文件是:() A、tnsnames.ora B、sqlnet.ora C、listener.ora D、以上都不对 正确答案:C B52X0002在将格式化的文本文件导入ORACLE时我们经常采用的是SQLLOAD命令,请选择正确的写法() A、sqlldr username/password control=data_file B、sqlldr username/password rows=128control=data_file C、sqlldr username/password control=data_file rows=64 D、sqlldr username/password control=data_file.ctl 正确答案:D B52X0003在Oracle维护过程中,第一步应查看数据库管理系统的运行日志,其日值文件名为:() A、error_'SID'.log B、Alert_'SID'.log C、trace_'SID'.log E、logtail_'SID'.log 正确答案:B B52X0004SGA(System Global Area)是ORACLE系统为实例分配的一组共享缓冲存储区,SGA分为几个部分。() A、4 B、5 C、6 D、7 正确答案:A库缓冲区、数据字典缓冲区、数据块高速缓冲区、重做日志缓冲区 B52X0005Oracle逻辑结构可分解为:表空间、数据库块、物理块、分类段、范围。它们之间的大小关系正确的是() A、表空间≥范围≥分类段≥数据库块≥物理块 B、表空间≥范围≥分类段≥物理块≥数据库块 C、表空间≥数据库块≥物理块≥分类段≥范围 D、表空间≥分类段≥范围≥数据库块≥物理块 正确答案:D B52X0006ORACLE中模式为模式对象的集合,为一个数据库用户所占有,模式名为与该用户名同名,下列属于模式对象的有() A、表 B、视图 C、快照 D、用户环境文件

ORACLE数据库期末考试题目及答案

期末考试卷(卷) 课程名称:数据库考试方式:开卷()闭卷(√) 、本试卷共4 页,请查看试卷中是否有缺页。 2、考试结束后,考生不得将试卷、答题纸带出考场。 1、以下(a )内存区不属于SGA。 A.PGA B.日志缓冲区 C.数据缓冲区 D.共享池 2、d )模式存储数据库中数据字典的表和视图。 (A.DBA B.SCOTT C.SYSTEM D.SYS 3、Oracle 中创建用户时,在若未提及DEFAULT TABLESPACE 关键字,Oracle 就将 c )则(表空间分配给用户作为默认表空间。A.HR B.SCOTT C.SYSTEM D.SYS

4、a )服务监听并按受来自客户端应用程序的连接请求。(A.OracleHOME_NAMETNSListener B.OracleServiceSID C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer 5、b )函数通常用来计算累计排名、移动平均数和报表聚合等。(A.汇总B.分析C.分组D.单行 6、b)SQL 语句将为计算列SAL*12 生成别名Annual Salary (A.SELECT ename,sal*12 …Annual Salary? FROM emp; B.SELECT ename,sal*12 “Annual Salary” FROM emp; C.SELECT ename,sal*12 AS Annual Salary FROM emp; D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM emp; 7、锁用于提供(b )。 A.改进的性能 B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全 8、( c )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。 A.行共享B.行排他C.共享D.排他 9、带有( b )子句的SELECT 语句可以在表的一行或多行上放置排他锁。 A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH

Oracle数据库数据对象分析_张达宇

Oracle数据库数据对象分析 日期:2006-01-18 08:00 点击: Oracle数据库数据对象中最基本的是表和视图,其他还有约束、序列、函数、存储过程、包、触发器等。对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。 表和视图 Oracle中表是数据存储的基本结构。ORACLE8引入了分区表和对象表,ORACLE8i引入了临时表,使表的功能更强大。视图是一个或多个表中数据的逻辑表达式。本文我们将讨论怎样创建和管理简单的表和视图。 管理表 表可以看作有行和列的电子数据表,表是关系数据库中一种拥有数据的结构。用CREATE TABLE语句建立表,在建立表的同时,必须定义表名,列,以及列的数据类型和大小。例如: 这样我们就建立了一个名为products的表,关键词CREATE TABLE后紧跟的表名,然后定义了三列,同时规定了列的数据类型和大小。 在创建表的同时你可以规定表的完整性约束,也可以规定列的完整性约束,在列上普通的约束是NOT NULL,关于约束的讨论我们在以后进行。 在建立或更改表时,可以给表一个缺省值。缺省值是在增加行时,增加的数据行中某一项值为null时,oracle即认为该值为缺省值。 下列数据字典视图提供表和表的列的信息: . DBA_TABLES . DBA_ALL_TABLES . USER_TABLES . USER_ALL_TABLES . ALL_TABLES . ALL_ALL_TABLES . DBA_TAB_COLUMNS . USER_TAB_COLUMNS . ALL_TAB_COLUMNS 表的命名规则 表名标识一个表,所以应尽可能在表名中描述表,oracle中表名或列名最长可以达30个字符串。表名应该以字母开始,可以在表名中包含数

Oracle测试题

一、选择题(40分) 1.Oracle发出下列select语句: SQL> select , , 2 from emp e, dept d 3 where = 4 and substr, 1, 1) = ‘S’; 下列哪个语句是Oracle数据库中可用的ANSI兼容等价语句 A.select empno, ename, loc from emp join dept on = where substr, 1, 1) = ‘S’; B.select empno, ename, loc from emp, dept on = where substr, 1, 1) = ‘S’; C.select empno, ename, loc from emp join dept where = and substr, 1, 1) = ‘S’; D.select empno, ename, loc from emp left join dept on = and substr, 1, 1) = ‘S’; 2.下列哪个选项表示Oracle中select语句的功能 A.可以用select语句改变Oracle中的数据 B.可以用select语句删除Oracle 中的数据 C.可以用select语句和另一个表的内容生成一个表 D.可以用select语句对表截断 3.你要操纵Oracle数据,下列哪个不是SQL命令 A.select * from dual; B.set define C.update emp set ename = 6543 where ename = ‘SMITHERS’; D.create table employees(empid varchar2(10) primary key); 4.你要在Oracle中定义SQL查询。下列哪个数据库对象不能直接从select语句中引用

oracle数据库期末考试试题及复习资料

oracle数据库期末考试试题及答案 A1、以下()内存区不属于SGA。 A.PGA B.日志缓冲区C.数据缓冲区D.共享池 D2、()模式存储数据库中数据字典的表和视图。 A.DBA B.SCOTT C.SYSTEM D.SYS C3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE 关键字,则Oracle就将()表空间分配给用户作为默认表空间。A.HR B.SCOTT C.SYSTEM D.SYS A4、()服务监听并按受来自客户端应用程序的连接请求。A.OracleHOME_NAMETNSListener B.OracleServiceSID C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。A.汇总B.分析C.分组D.单行 B6、()SQL语句将为计算列SAL*12生成别名Annual Salary A.SELECT ename,sal*12 ‘Annual Salary' FROM emp; B.SELECT ename,sal*12 “Annual Salary”FROM emp; C.SELECT ename,sal*12 AS Annual Salary FROM emp; D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM

12 / 1 emp; B7、锁用于提供( )。 A.改进的性能 B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全 C8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。 A.行共享B.行排他C.共享D.排他 B9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。 A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH C10、使用( )命令可以在已分区表的第一个分区之前添加新分区。A.添加分区B.截断分区 C.拆分分区D.不能在第一个分区前添加分区 C11、( )分区允许用户明确地控制无序行到分区的映射。 A.散列B.范围C.列表D.复合 C12、可以使用()伪列来访问序列。 A.CURRVAL和NEXTVAL B.NEXTVAL和PREVAL C.CACHE和NOCACHE D.MAXVALUE和MINVALUE

Oracle数据库试题及答案word版本

O r a c l e数据库试题及 答案

Oracle数据库试题 一、选择题 1、段是表空间中一种逻辑存储结构,以下( D )不是ORACLE数据库使用的段类型。 (A)索引段(B)临时段(C)回滚段(D)代码段 2、 ORACLE数据库物理结构包括以下三种文件,以下不属于的是( A )。(A)系统文件(B)日志文件(C)数据文件(D)控制文件 3、数据库中有两个用户scott和muuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是( C ) (A)select*from scott.wz where wunit is null and rownum<5; (B)select*from myuser.wz where wunit = null and rownum<5; (C) select*from myuser.wz where wunit is null and rownum<6; (D)select*form scott.wz where wunit is null and rownum<6; 4、若当前日期为’25-5月-06’,以下( D )表达式能计算出5个月后那一天所在月份的最后一天的日期。 (A)NEXT_DAY(ADD_MONTHS(28-5月-06,5)) (B)NEXT_DAY(MONTHS_BETWEEN(28-5月-06,5)) (C)NEXT_DAY(MONTHS_BETWEEN(’28-5月-06’,5)) (D)NEXT_DAY(ADD_MONTHS(’28-5月-06’,5))

Oracle数据库试题

constraint pk_spj primary key (sno,pno,jno), constraint fk_spj_sno foreign key (sno) references s(sno), constraint fk_spj_pno foreign key (pno) references p(pno), constraint fk_spj_jno foreign key (jno) references j(jno) 实验二游标和函数 1、定义一个游标完成显示所有供应商名。 declare v_sname s.sname%type; cursor cursor_sname is select sname from s; begin for curso in cursor_sname loop dbms_output.put_line(curso.sname); end loop; end; 2、定义、调用一个简单函数:查询返回指定供应商编号的供应商名及其供应零件总数量。create or replace function fun(f_sno in s.sno%type,f_sname out s.sname%type) return number as f_qty number; begin SELECT s.sname,sum(qty) into f_sname,f_qty from s,spj WHERE s.sno=spj.sno GROUP BY s.sname,spj.sno having spj.sno=f_sno; return f_qty; end; declare v_sno s.sno%type:='&sno'; v_sname s.sname%type; v_qty spj.qty%type; begin v_qty:=fun(v_sno,v_sname); dbms_output.put_line(v_sname||v_qty); end; 3、定义一个函数:对于给定的供应商号,判断是否存在,若存在返回0,否则返回-1。写一段程序调用此函数,若供应商号存在则在spj插入一元组。

2019-2020学年第一学期《Oracle数据库》期末考试

2019-2020学年第一学期《Oracle数据库》期末考试适用班级:1801,1802,1803,1804 1、手动创建数据库的第一步是() A.启动实例 B.启动SQL*Plus 以SYSDBA身份连接Oracle C.查看系统的实例名 D.创建参数文件 2、创建一个数据库至少需要几个控制文件?() A.一个B.二个C.三个D.无 3、执行CREATE DATABASE命令之前,应该发出的命令是() A.STARTUP INSTANCE B.STARTUP NOMOUNT C.STARTUP MOUNT D.以上都不是 4、DBA使用哪个命令显示当前归档状态?() A.ARCHIVE LOG LIST B.FROM ARCHIVE LOGS C.SELECT * FROM V$THREAD D.SELECT * FROM ARCHIVE_LOG_LIST 5、把多路镜像控制文件存于不同磁盘最大的好处是() A.数据库性能提高 B.防止失败 C.提高归档速度 D.能并发访问提高控制文件的写入速度6、段的集合称为() A.区B.段C.表空间D.数据库 7、数据字典表和视图存储在() A.USERS表空间B.SYSTEM表空间 C.TEMPORARY表空间D.以上三个中任意 8、数据块的哪三个部分合称为块头部?() A.表目录、行目录和行数据 B.标题、表目录、空闲区 C.表目录、行目录、标题 D.块头部、行数据、行头部 9、临时表空间中用于排序的段是何时创建的() A.排序操作开始的时候 B.临时表空间创建的时候 C.当排序操作需要内存操过1KB的时候。 D.上述所有选项。 10、如果未定义临时表空间,哪一个会作为默认的临时表空间?() A.ROLLBACK B.USERS C.INDEX D.SYSTEM 11、Oracle实例是() A.Oracle 内存结构B.Oracle I/O 结构 C.Oracle 后台进程D.以上都是 12、最近使用过的SQL语句存储在() A.共享池B.数据高速缓冲区C.私有全局区D.用户全局区13、Oracle事务提交即() A.数据由DBWR进程写入磁盘文件 B.LGWR进程成功写入日志 C.PMON 进程提交 D.SMON 进程写数据 14、实例启动时数据库所处的状态是() A.MOUNT B.OPEN C.NOMOUNT D.None 15、用于删除约束的命令是哪一个?() 一、单选题(20*2分=40分)

浅谈对的理解对象—关系型数据库

浅谈对对象—关系型数据库的理解 姓名:杨小敏 学号:2010206190026

针对对象—关系型数据库的理解我想结合自己的专业(地图学与地理信息系统)从下面三个方面来理解:(1)关系型数据的发展以及在空间数据管理方面的优缺点(2)面向对象数据库的发展及在空间数据管理方面的优缺点(3)关系型数据库和面向对象技术的融合在数据库发展中所起到的独特作用在我们GIS专业领域内,随着信息技术的发展,各种应用系统建设的不断深入,像现在面向21世纪的应急应用系统的建设、城市基础地理空间信息数据库系统与共享平台的建设、地理信息公共服务平台的建设,小到“数字城市”的建设,大到“数字地球”乃至“智慧地球”的建设,我们已经开始不满足数值和文字的信息处理,为了达到系统建设平台尤其是公共服务平台的建设起到良好的客户友好体验,大量的图形信息,音频信息已经深入到数据库的设计中,其中尤其是空间数据库管理备受瞩目。所以,面对信息爆炸的21世纪,海量数据的存储和管路已经不是传统的数据库能解决的,空间数据管理需要更强的数据库——对象关系型数据库。 为什么空间数据需要对象关系型数据库的管理才更有效?我想简单的说一下GIS空间数据的基本特征:(1)空间特征:每个空间对象都具有空间坐标,所以在存储空间数据的同时我们要考虑数据的空间分布特征;(2)非结构化特征:通用数据库或者是传统数据库数据记录一般是结构化的,在面对空间图形信息的时候难以直接采用关系数据管理系统;(3)空间关系特征:空间数据的空间关系最重要的就是空间拓扑关系,这种拓扑结构方便了空间数据的查询和空间分析,但是给空间数据的一致性和完整性的维护增加了复杂性;(4)海量数据的特征:数据库在面对海量数据的存储和组织时,一般在二维空间上划分块或图幅,在垂直的方向上划分层在组织海量空间数据。 在空间数据的管理技术的发展中,从手工管理管理阶段到文件管理阶段再到数据库管理阶段,在三个数据管理阶段,对数据管理方式也不尽相同,在这里,我想说的是空间数据库的发展历史对空间数据管理的影响,第一是层次关系型数据库:只是数据库发展的初级阶段,这是空间数据的管理大多用文件方式管理,很显然不适合管理海量的空间数据,所以淘汰;第二是网络关系型数据库:在一定程度上解决了空间数据复杂管理的难题,但还是被日益崛起的关系型数据库所淘汰;第三是关系型数据库的发展:为了解决难于保证数据的完整性,开始将空

Oracle数据库基础题库【含答案】

1、判断题,正确请写写"T",错误请写写"F", 1、oracle数据库系统中,启动数据库的第一步是启动一个数据库实例。( T ) 2、Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客户机的连接请求。( F) 3、oracle数据库中实例和数据库是一一对应的(非ORACLE并行服务,非集群)。( T) 4、系统全局区SGA 是针对某一服务器进程而保留的内存区域,它是不可以共享的。( F ) 5、数据库字典视图ALL_***视图只包含当前用户拥有的数据库对象信息。( F ) 8、数据字典中的内容都被保存在SYSTEM表空间中。( T ) 9、HAVING后面的条件中可以有聚集函数,比如SUM(),AVG()等, WHERE 后面的条件中也可以有聚集函数。( F ) 10、"上海西北京" 可以通过like ‘%上海_’查出来。( F ) 11、表空间是oracle 最大的逻辑组成部分。Oracle数据库由一个或多个表空间组成。一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间。( T ) 12、表空间分为永久表空间和临时表空间两种类型。( T ) 13、truncate是DDL操作,不能 rollback。( T ) 14、如果需要向表中插入一批已经存在的数据,可以在INSERT语句中使用WHERE语句。( F ) 15、Oracle数据库中字符串和日期必须使用双引号标识。( F ) 16、Oracle数据库中字符串数据是区分大小写的。( T ) 17、Oracle数据库中可以对约束进行禁用,禁用约束可以在执行一些特殊操作时候保证操作能正常进行。( F ) 18、为了节省存储空间,定义表时应该将可能包含NULL值的字段放在字段列表的末尾。( T ) 20、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。( T ) 21、自然连接是根据两个表中同名的列而进行连接的,当列不同名时,自然连接将失去意义。( T ) 23、PL/SQL代码块声明区可有可无。( T ) 24、隐式游标与显式游标的不同在于显式游标仅仅访问一行,隐式的可以访问多行。( F )

Oracle数据库期末复习知识点整理

基础知识 表3.2 Oracle数据类型

表3.3 XSB的表结构

操作表 创建表 CREATE TABLE [schema.] table_name ( column_namedatatype [DEFAULT expression] [column_constraint][,…n] [,…n] ) [PCTFREE integer] [PCTUSED integer] [INITRANS integer] [MAXTRANS integer] [TABLESPACE tablespace_name] [STORGE storage_clause] [CLUSTER cluster_name(cluster_column,…n)] [ENABLE | DISABLE ] [AS subquery] 【例】使用CRETE TABLE命令为XSCJ数据库建立表XSB,表结构参照表3.3。 打开SQL*Plus工具,以system方案连接数据库,输入以下语句: CREATE TABLE XSB ( XH char(6) NOT NULL PRIMARY KEY, XM char(8) NOT NULL, XB char(2) DEFAULT '1' NOT NULL, CSSJ date NOT NULL, ZY char(12) NULL, ZXF number(2) NULL, BZ varchar2(200) NULL ); 修改表 ALTER TABLE [schema.] table_name [ ADD(column_namedatatype [DEFAULT expression][column_constraint],…n) ] /*增加新列*/ [ MODIFY([ datatype ] [ DEFAULT expression ] [column_constraint],…n) ] /*修改已有列的属性*/ [ STORAGE storage_clause ] *修改存储特征*/ [ DROP drop_clause ] /*删除列或约束条件*/ 【例】使用ALTER TABLE语句修改XSCJ数据库中的表。

ORACLE数据库习题

1.0RACLE数据库物理结构包括以下三种文件,以下不属于的是() A .系统文件 B.日志文件 C.数据文件 D.控制文件 2?下列哪个命令是用于ORACLE中数据导出的() A.exp B. imp C . in put D . output 3.()是用于控制数据访问的语言。 A.DML B . DDL C . DCL D . DLL 4.NULL表示什么() A . 0 B.空格 C .值D .没有值 5?下面四个语句中哪一个是正确的?() A . SELECT * , ENAME FROM EMP; B . DELETE * FROM EMP; C . SELECT DISTINCT EMPNO ,HIREDATE FROM EMP; D . SELECT ENAME|SAL AS “ namS FROM EMP ; 6?假定有一张表用户表users,其中一身份证字段ID_card。为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束() A . primary key B . check C . default D . notnull 7?下面哪一个like命令会返回名字象HOTKA的行?() A . where en ame like ‘ _HOT%' B . where ename like ‘ H_T%' C . where ename like ‘ %TKA_' D . where ename like ‘ %TOK%' 8.()操作符只返回由第一个查询选定但是没有被第二个查询选定的行。 A.UNION B.UNION ALL C.IN TERSECT D.MINUS 9 . EMPLOYEES表的结构如下: EMPLOYEE_ID NUMBER PRIMARY KEY FIRST_NAME VARCHAR2(25) LAST_NAME VARCHAR2(25) HIRE_DATE DATE 考虑下面的语句。 1.CREATE table n ew_emp (employee_id NUMBER, name VARCHAR2(30)); 2.IN SERT INTO n ew_emp SELECT employee_id,last_ name from employees; 3.Savepo int s2; 4.DELETE from n ew_emp; 5.ROLLBACK to s2; 6.DELETE from n ew_emp where employee_id=180; 7.UPDATE new_emp set name= ' James'; 8.R0LLBACK to s2;

oracle数据库期末考试试题及答案(一)

一、选择 1 )CBO与RULE的区别,RBO根据规则选择最佳执行路径来运 行查询,CBO根据表统计找到最低成本的访问数据的方法确定执行 计划。使用CBO需要注意: a ) 需要使用提示(Hint) b ) 优化SQL的写法 c ) 选择最有效率的表名顺序 d ) 需要经常对表进行ANALYZE命令进行分析统计 d ) 需要稳定执行计划 2 ) 在Oracle中,一个用户拥有的所有数据库对象统称为()。 a ) 数据库 b ) 模式 c ) 表空间

d ) 实例 3 )在Oracle中,可用于提取日期时间类型特定部分(如年、 月、日、时、分、秒)的函数有()。 a ) DATEPART b ) EXTRACT c ) TO_CHAR d ) TRUNC 4 )在Oracle中,有一个教师表teacher的结构如下:IDNUMBER(5) NAMEVARCHAR2(25) EMAILVARCHAR2(50) 下面哪个语句显示没有Email地址的教师姓名()。a ) SELECTnameFROMteacherWHEREemail=NULL; b ) SELECTnameFROMteacherWHEREemail<>NULL; c SELECTnameFROMteacherWHEREemailISNULL;

) d ) SELECTnameFROMteacherWHEREemailISNOTNULL; 5 )在Oracle数据库的逻辑结构中有以下组件:A表空间B数据块C区D段 这些组件从大到小依次是()。 a ) A→B→C→D b ) A→D→C→B c ) A→C→B→D d ) D→A→C→B 6 )在Windows操作系统中,Oracle的()服务监听并接受来 自客户端应用程序的连接请求。 a ) OracleHOME_NAMETNSListener b ) OracleServiceSID c ) OracleHOME_NAMEAgent

Mysql-Oracle数据库测试题 -带答案

Oralce mysql 1、当你执行以下查询语句: SELECT empno,ename FROM emp WHERE empno =7782 or empno =7876; 在WHERE语句中,以下哪个操作符可以取代or?[参考答案:A] A、IN B、BETWEEN ……AND... C、<= D、>= 2、PL/SQL块中可以使用下列()命令。(选择两项)[参考答案:B,C] A、TRUNCATE B、DELETE C、SAVEPOINT D、ALTER TABLE 3、Oracle数据库的物理文件不包括[参考答案:D] A、数据文件(.dbf) B、重做日志文件(.log) C、控制文件(.ctl) D、缓存文件

4、哪个命令用来创建一个primary key constraint pk_books 在表BOOKS, 列ISBN上? 请选择一个[参考答案:C] A、create primary key on books(ISBN) B、create constraint pk_books primary key on books(ISBN) C、alter table books add constraint pk_books primary key (ISBN); D、alter table books add primary key (ISBN) 5、下列那个()不是Oracle默认的用户[参考答案:D] A、system B、sys C、scott D、sa 6、当创建过程时,可以实现输出数据的参数有[参考答案:B] A、IN参数 B、OUT参数 C、TEST参数 D、任何参数都不能输出 7、下面的case语句 DECLARE V_sal NUMBER:=1200; V_result NUMBER;

Oracle数据库期末考试

1.企业管理器(Oracle Enterprise Manager),简称OEM。em是企业管理的缩写。 2.SQL*Plus行编辑命令及功能 A[PPEND] text:将文本text的内容附加在当前行的末尾 C[HRNGE]/text/:删除当前行中text指定的内容 CL[EAR] BUFF[ER]:删除SQL缓冲区中的所有命令行 I[INPUT]:在当前行后插入任意数量的命令行 L[IST]:列出所有行 R[UN]:显示并运行缓冲区中当前命令 3.SQL*PLUS文件操作命令及功能 SA V[E] filename:将SQL缓冲区的内容保存到指定的文件夹中,默认的拓展名为 .sql GET filename:将文件的内容调入SQL缓冲区,默认的文件拓展名为.sql STA[RT] filename:指定的命令文件 EXIT:退出 SQL*PLUS 4.在SQL*PLUS中启动或关闭实例 (1)启动实例-OPEN:打开实例和所有文件(数据文件和日志文件)允许多用户存取数据库。-MOUNT:装载实例和打开控制文件,激活某些功能。-NO MOUNT:启动实例,不装载数据库。 (2)关闭实例SHUTDOWN:-NORMA L:正常关闭。(如果有用户登录在数据库中,该命令无法关闭)-IMMEDIATE:立即关闭。- TRASACTIONAL:尽量少影响客户端,避免客户丢失信息。-ABORT:放弃一切事务,立即关闭。 第二章 1.数据库分内部结构、外部结构。 2.内部结构:表空间(TABLE SPACE)、表(TABLE)、约束条件(CONSTRAINT)。 3.表空间:EXAMPLE示例、SYSTEM系统、TEMP临时。 4.段(SEGMENT)由盘区(EXETENT)组成,盘区由数据块(DATA BLOCK)组成。数据块是最小的存储单元。 5.外部结构:数据文件(DATAFILE)、重做日志文件(REDO LOG FILES)、控制文件(CONTROL FILES)。每一个数据库都有一个或多个数据文件,而一个数据文件只能属于一个表空间。一个数据库至少需要两个重做日志文件。Oracle以循环方式向重做日志文件写入。 6.数据库实例(instance)也称作服务器(server)。 7.创建表空间时,会相应地创建数据文件(datafile)以存储数据,数据库与表空间之间存在着一对多的关系,反之也是。 8.SYSTEM数据文件不能删除。 第五章 1.索引按存储方法分类:B*树索引和位图索引。 2.使用SQL命令创建索引:索引的表或簇必须在自己的模式中;必须在要索引的表上具有 INDEX权限;必须具有CREA TE ANY INDEX权限。 3.数据完整性:域完整性(又称列完整性,指定一个数据集对某一个列是否有效和确定是否 允许空值)、实体完整性和参照完整性。

ORACLE数据库工程师面试题目

1. 解释冷备份和热备份的不同点以及各自的优点 解答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。热备份的优点在于当备份时,数据库仍旧可以被使用并且可以将数据库恢复到任意一个时间点。冷备份的优点在于它的备份和恢复操作相当简单,并且由于冷备份的数据库可以工作在非归档模式下,数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘) 2. 你必须利用备份恢复数据库,但是你没有控制文件,该如何解决问题呢? 解答:重建控制文件,用带backup control file 子句的recover 命令恢复数据库。 3. 如何转换init.ora到spfile? 解答:使用create spfile from pfile 命令. 4. 解释data block , extent 和segment的区别(这里建议用英文术语) 解答:data block是数据库中最小的逻辑存储单元。当数据库的对象需要更多的物理存储空间时,连续的data block就组成了extent . 一个数据库对象拥有的所有extents被称为该对象的segment. 5. 给出两个检查表结构的方法 解答:1.DESCRIBE命令 2.DBMS_METADATA.GET_DDL 包 6. 怎样查看数据库引擎的报错 解答:alert log. 7. 比较truncate和delete 命令 解答:两者都可以用来删除表中所有的记录。区别在于:truncate是DDL操作,它移动HWK,不需要rollback segment .而Delete是DML操作, 需要rollback segment 且花费较长时间. 8. 使用索引的理由 解答:快速访问表中的data block 9. 给出在STAR SCHEMA中的两种表及它们分别含有的数据 解答:Fact tables 和dimension tables. fact table 包含大量的主要的信息而dimension t ables 存放对fact table 某些属性描述的信息

oracle数据库基础教程期末考试简答与实践小抄范文

(1)第十章模式对象重点 数据是描述事物的符号,是数据库中存储的基本对象。在计算机中,用记录的形式来描述数据。数据与数据的解释即数据的语义是紧密结合的。数据库是指按一定的数据模型组织、描述和存储的数据的集合。数据库管理系统是位于操作系统与用户之间的一层数据管理软件。数据库系统是指数据库、数据库管理系统与计算机系统的结合。通常,在不引起混淆的情况下将数据库系统简称为数据库。 (2)数据库管理系统的主要功能包括:数据定义、数据操纵、数据库运行与控制、数据库建立与维护、数据字典定义以及数据通信等。数据库管理系统的内部分多个层次,由应用层、语言定义及其翻译处理层、数据存取层、数据存储层、操作系统以及数据库组成。 (3)数据库系统由数据库、操作系统、数据库管理系统、开发工具、应用系统、数据库管理员以及数据库用户组成。 (4)概念模型是用简单、清晰、用户易于理解的概念来描述现实世界具体事物及事物之间的关系。它是现实世界到信息世界的抽象,是数据库设计人员进行数据库设计的工具,与具体的数据库管理系统无关。组织数据模型是从数据组织方式的角度来描述信息,它决定了数据在数据库中的组织结构。 (5)关系数据库的完整性约束包括三类:实体完整性、参照完整性和用户定义完整性。实体完整性:是指关系中必须定义主键,以惟一的确定一个元组。主键由一个或多个属性构成,其取值惟一且不能为空(NULL)。参照完整性:在关系模型中,通过外键来表示表之间的联系。参照完整性是指一个表中的外键的取值必须是参照表中主键存在的值或为空(NULL)。例如,学生信息表中“班号”属性为外键,其取值必须是班级信息表中“班号”属性的某一个值或为空。用户定义完整性:是指用户根据特定应用情况,设定一些约束,反映某一具体应用所涉及的数据必须满足的语义要求。例如,“性别”属性的域为“男、女”。 (6) (7) Oracle数据库体系结构由物理存储结构、逻辑存储结构和实例组成。其中物理存储结构描述了操作系统层次数据的存储与管理,包括数据文件、日志文件、重做日志文件等组成。逻辑结构描述了数据库内部数据的组织与管理,由表空间、段、区、块组成。实例是数据库运行的软件结构,由内存结构和后台进程组成。数据库运行过程中,用户的操作在内存区中进行,最终通过后台进行转化为对数据库的操作。

相关文档
最新文档