文档库 最新最全的文档下载
当前位置:文档库 › Oracle选择题

Oracle选择题

Oracle选择题
Oracle选择题

Oracle选择题

1)当服务器启动时,下列哪种不是必须的(D)

A: 数据文件

B:控制文件

C:日志文件

D:归档日志文件

2)在Oracle当用户要执行select语句时,下列哪个进程从磁盘获得用户需要的数据(B)。A:用户进程

B:服务器进程

C:日志写入进程(LGWR)

D:检查点进程(CKPT)

3)在Oracle中,一个用户拥有的所有数据库对象统称为(B)

A:数据库

B:模式

C:表空间

D:实例

4)在Oracle中,可用于提取日期时间类型特定部分(如年、月、日、时、分、秒)的函数有(bc)。

A:DATEPART

B:EXTRACT

C:TO_CHAR

D:TRUNC

5) 在Oracle中,用于计算数值连续的排位,且相同数值排位相同的分析函数是(C)

A:ROW_NUMBER

B:RANK

C:DENSE_RANK

D:ROWNUM

6)在Oracle中,有一个教师表teacher的结构如下:

ID NUMBER(5),NAME V ARCHAR2(25),EMAIL V ARCHAR2(50)

下面哪个语句显示没有Email地址的教师姓名(C)

A:select name from teacher where email=null;

B:select name from teacher where email<>null;

C:select name from teacher where email is null;

D:select name from teacher where email is not null

7)在Oracle数据库的逻辑结构中有以下组件:D

A 表空间

B 数据库

C 区

D 段

这些组件从大到小依次是(B)。

A:A->B->C->D

B:A->D->C->B

C:A->C->B->D

D:B->A->D->C

E:A->D->C->B

8)在Windows系统中,Orcale的(A)服务监听并接受来自客户端应用程序的连接请求。A:OrcaleHOME_NAMETNSListener

B:OrcaleServiceSID

C:OracleHOME_NAMEAgent

D:OrcaleHOME_NAMEHTTPServer

9)在Windows系统中,Orcale的(D )服务是使用iSQL*Plus必须的

A:OrcaleHOME_NAMETNSListener

B:OrcaleServiceSID

C:OracleHOME_NAMEAgent

D:OrcaleHOME_NAMEHTTPServer

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

A:USER

B:SYSTEM

C:SYS

D:DEFAULT

11)在Oracle数据库中,(B)用户模式存储数据字典表和试图对象。

A:SYSTEM

B:SYS

C:SCOTT

D:SYSDBA

12)在Oracle中,下面哪条语句当COMM字段为空时显示0,不为空时显示COMM的值(A)。

A:select ename, nvl(comm.,0) from emp;

B:select ename, null(comm.,0) from emp;

C:SELECT ename,NULLIF(comm,0)FROM emp;

D:SELECT ename,DECODE(comm.,NULL,0)FROM emp;

13) 在Oracle 中,下列不属于字符数据类型的是(D)

a)V ARCHAR2

b) LONG

c) LONG RAW

b)CLOB

14) 在Oracle中,下面用于限制分组函数的返回值的字句是(B)

a)WHRER

b) HA VING

c) ORDER BY

d) 无法限定分组函数的返回值

15)Oracle中,有一个名为seq的序列对象,以下语句能返回序列值但不会引起序列值增加的是(C)

a) select seq.ROWNUM from dual;

b) select seq.ROWID from dual;

c) select seq.CURRV AL from dual;

d) select seq.NEXTV AL from dual;

16) 在Oracle中,游标都具有以下属性,除了(C)

a) %NOTFOUND

b) %FOUND

c) %ROWTYPE

d) %ISOPEN

e)%ROWCOUNT

17) 在Oracle PL/SQL中,执行动态SQL的语句是(D)

a)NXECUTE

b) START

c) RUN

d) EXECUTE IMMEDIATE

18) 在Oracle中,当控制一个显式游标时,以下哪种命令包含INTO子句(C)

a) OPEN

b) CLOSE

c) FETCH

d) CURSOR

19)在Oracle中,PL/SQL块中定义了一个带参数的游标:

CURSOR emp_cursor(dnum NUMBER)IS SELECT sal ,comm. FROM emp WHERE deptno=dunum;那么正确打开游标的语句是(AD)

a)OPEN emp_cursor(20)

b)OPEN emp_cursor FOR(20)

c)OPEN emp_cursor USING 20

d)FOR emp_rec IN emp_cursor(20) LOOP…END LOOP

20)Oracle提供的(D),能够在不同硬件平台上的Oracle数据库之间传递数据a)归档日志运行模式

b)RECOVER命令

c)恢复管理器(RMVN)

d)Export和Import工具

21) PL/SQL块中可以使用的下列(BC)命令(选择两项)

a)TRUNCATE

b) DELETE

c) SA VEPOINT

d) ALTER TABLE

22) 有语句如下:

TYPE curtype IS REF CURSOR RETURN book.price%TYPE;

表book的列的数据类型是NUMBER(5)则(D)(选择一项)

a)curtype可以返回INTEGER类型数据

b)curtype可以返回NUMBER(5,2)类型数据

c)curtype可以返回V ARCHAR2(10)类型数据

d)以上皆非

23)对一个视图myView 创建一个触发器mytrigger,语句为(D)。(选择一项)

a)CREATE TRIGGER mytrigger

DEFORE

INSERT ON myView

BEGIN

-----

b)CREATE TRIGGER mytrigger

AFTER

INSERT ON myView

BEGIN

---

c)CREATE TRIGGER mytrigger

INSTEAD OF

INSERT ON myView

BEGIN

d)CREATE TRIGGER mytrigger

INSTEAD OF

INSERT ON myView

FOR EACH ROW

BEGIN

24)有一段PL/SQL程序如下示:

Var1 :=10;

LOOP

EXIT WHEN var1>12;

Var1:=var+1;

DBMS_OUTPUT.PUT_LINE(‘A’);

END LOOP;

输出为(D).选择一项

a) A

b) A

c) A ,A

d)A,A,A

25)在表tabl中有列的col1,其数据类型为INTERGER,在PL/SQL的DECLARE部分声明了一个变量var1,语句为:

Var1 tabl.col1%TYPE;

不久后,执行了语句:

ALTER TABLE tabl MODIFY (col1 (NUMBER (5,2)));

则var1 的数据类型为( B ) (选择一项)

a)整数型

b)数字型

c)字符型

d)以上皆非

26)DBMS__LOB数据包提供的( D ),返回LOB值的长度。(选择一项)

a) LENGTH

b) SUBSTR

c) INSTR

d) GETLENGTH

27) Oracle数据库由一个或多个称为( B )的逻辑存储单元组成。(选择一项)

a) 表

b) 表空间

c) 行

d) 单元

28) ( B )可以从过程返加多个值.(选择一项)

a) 使用IN参数

b) 使用OUT参数

c) 使用指针

d) 不能使用

29) 同义词有以下( ABC)用途.(选择三项)

a) 简化SQL语句

b) 隐藏对象的名称和所有者

c) 提供对对象的公共访问

d) 显示对象的名称和所有者

30)在创建序列过程中,下列( C ) 选择指定序列在到达最大值或最小值后,将继续从头开始生成值。(选择一项)

a)Cycle

b)Nocycle

c)Cache

d)Nocache

31)在Oracle中,关于HA VING子句,以下说法是正确的是(C)。(选择)

a) HA VING子句和WHERE子句相同

b) HA VING子句用于单行的条件查询

c) HA VING子句用于已分组的条件查询

d) HA VING子句必须紧跟在WHERE子句后面使用

32)在Oracle中,PL/SQL块定义了一个带参数的游标:

CURSOR emp_cursor(dnum NUMBER) IS

SELECT sal,comm. FROM emp WHERE deptno = dnum;

那么正确打开此游标的语句是(aD)。

a) OPEN emp_cursor(20);

b) OPEN emp_cuesor FOR 20

c) OPEN emp_cuesor USING 20

d) For emp_rec IN emp_cursor(20) LOOP…END LOOP;

33)在Oracle中,有表”cd”,它包含属性“cdcode”,“category”和“cdname”,要

查询category取值为“CLASSIC”或“ROCK”的行,应采用语句(AD)。

a)SELECT * FROM cd WHERE category IN(‘CLASSIC’,‘ROCK’);

b)SELECT * FROM cd WHERE category BETWEEN‘CLASSIC’AND‘ROCK’;

c)SELECT * FROM cd WHERE category=‘CLASSIC’AND category=‘ROCK’;

d)SELECT * FROM cd WHERE ategory=‘CLASSIC’OR category=‘ROCK’;

34)在Windows操作系统中,Oracle的(A)服务监听并接受来自客户端应用程序的连接请求。(选择1项)

a. OracleHOME_NAMETNSListener

b. OracleSrviceSID

c. OracleHOME_NAMEAgent

d. OracleHOME_NAMEHTTPServer

35)在Oracle中,关于PL/SQL下列描述正确的是(C)。(选择一项)

a)PL/SQL代表Power language/SQL

b)PL/SQL不支持面向对象编程

c)PL/SQL块包括声明部分,可执行部分和异常处理部分

d)PL/SQL提供的四中内置数据类型是character,integer,float,Boolean

36)在Oracle 中,下述(A)命令会使挂起的事务完成.(选择一项)

a)alter

b)delete

c)update

d)select

e)insert

37)在Oracle中,PL/SQL程序块必须包括(B).(选择一项)

a) 声明部分

b) 可执行部分

c) 异常出来部分

d) 以上都是

38)Oracle表中,如果没有指定的话,V ARCHAR2的缺省长度是(E).(选择一项)

a)1

b)256

c)38

d)4000

e)varchar2类型的列必须指定长度

39)在Oracle中,表vendor包含以下列:

Vendor_ID number primary key

Name varchar(30)

Location_ID number

Order_dt date

Order_amount number(8,2)

下列对表vendor操作的语句合法的是(CD)(选择2项)

a)select locaton_id,avg(order_amount)from vendor;

b) select sum(order_dt) from vendor;

c) select sum(order_amount) from vendor;

d) select max(order_dt)from vendor;

e) insert into employee(salary,last_name,first_name) values(35000,’Wang’,’Fred’);

40)在Oracle中,阅读以下PL/SQL代码:

1 declare

2 p_emp emp.ename%type;

3 cursor emp_cur is

4 select ename from emp’

5 begin

6 for rac_emp in emp_cur loop

7 dbms_output.put_line(‘Emp Name:”//rec_emp.ename”’);

8 end loop

9 end;

与此程序第6至8行等价的程序代码是(AD)。(选择2项)

a)open emp_cur;

loop

fetch emp_cur into p_emp;

if emp_cur%found then

dbms_output.put_line(‘Emp Name:’||p_emp);

else

exit

end loop;

close emp_cur;

b)open cmp_cur;

fetch emp_cur intp p_emp;

loop

if emp_cur%found then

dbms_output.put_line(‘Emp Name:’||p_emp);

else

exit;

end if;

end loop;

close emp_cur;

c)open emp_cur;

fetch emp_cur into p_emp;

while emp_cur%found loop

dbms_output.put_line(‘Emp Name:’||p_emp);

end loop;

close emp_cur;

d)open emp_cur;

fetch emp_cur into p_emp;

while emp|_cur%found loop

dbms_output.put_line(‘Emp Name:’||p_emp);

fetch emp_cur into p_emp;

end loop;

close emp_cur;

41.在Oracle中,(C)操作符返回两个查询所选定的所有不重复的行

A Intersect

B Minus

C Union

D Or

42.在Oracle数据库中,使用以下语句创建一个触发器:

Create or replace trigger ai_emp

After insert on emp

For each row

Begin

:new.ename:=upper(:new.ename);

End ai_emp;

以下说法正确的是(D)

A 触发器创建成功,该触发器将每次插入新记录的ename列变为大写

B 触发器创建成功,该触发器将每次insert语句插入的第一条记录的ename列边为大写

C 触发器创建失败,因为insert触发器不能更改:new对象的值

D 触发器创建失败,因为after触发器不能更改:new对象的值

43.在Oracle中,不属于游标属性的是(CE)。(选择二项)

a)%NOTFOUND

b)%FOUND

c)%ISCLOSE

d)%ISOPEN

e)ROWTYPE

44. 在Oracle中。关于程序包的描述错误的是(B)(选择的1个)

A)程序包是一中数据对象,它是对相关PL/SQL类型,子程序,游标,异常,变量和常量的封装

B)程序包中私有对象是通过PRIVATE关键字表示的

C)PL/SQL允许两个或多个打包的子程序具有同一名字,只需要子程序接受的参数数据类型不同

D)程序包具有模块化,信息影藏,新加功能及性能更佳等优点

45.在 Oracle中,下列(C)语句定义了一个游标。(选择一项)

a) CURSOR cur For SELECT * FROM cd

WHERE category=’ROCK’

b) CREATE CURSOR cur FOR SELECT * FROM cd

WHERE category=’ROCK’:

c) CURSOR cur IS SELECT * FROM cd

WHERE category=’ROCK’;

d) CREATE CURSOR cur IS SELECT * FROM cd

WHERE category=’ROCK’;

46.在oracle中关于having子句,以下说法正确的是(C)(单选)

A, having子句和where子句相同

B, having子句用于单行的条件查询

C, having子句用于已分组的查询条件

D, having子句必须紧跟在where子句后面使用

47.在oracle 中使用(D)语句打开游标,执行查询,并识别活动集(单选)

A, run

B , fetch

C, close

D, open

48.在oracle中有一个名为seq的序列对象,以下语句能返回序列值但不会引起序列值增加的是(C)(单选)

A,select swq.RowNum from dual

B,select swq.RowID from dual

C,select swq.CurrVal from dual

D,select swq.NextVal from dual

49.在oracle 中在sql提示符下调用pl/sql过程的方法是(B)(单选)

A, 使用call语句

B, 使用excute语句

C, 使用run语句

D, 使用过程名

50.在Oracle数据库中,使用以下语句创建一个触发器,以下说法正确的是(D)。

Create or replace trigger ai_emp

Agter insert on emp

for insert on emp

begin

:new.ename:=upper(:new.ename);

End ai_imp;

a)触发器创建成功,该触发器将每次插入的新记录的enmae列变为大写。

b)触发器创建成功,该触发器将每次insert语句插入的第一条记录的ename列变为大写。

c)触发器创建失败,因为insert触发器不能更改:new对象的值

触发器创建失败,因为after触发器不能更改:new对象的值。

51.在Oracli中,PL/SQL具有两种类型的子程序,即过程和(C)。(选择一项)

a)对象

b包

c)函数

d)可变数组

52.在Oracle中,(C)先根据范围对数据进行分区,然后在这些分区内创建散列子分区。(选择一项)

a)范围分区

b)散列分区

c)复合分区

d)列表分区

53.在Oracle中,当需要使用显式游标更新或删除游标中的行时,声明游标时指定的SELECT 语句必须带有(C)子句。(选择一项)

a)WHERE CURRENT OF

b)INTO

c)FOR UPDATE

d)ORDER BY

54.在Oracle中,序列venseq使用下面的语句创建:

CREATE SEQUENCE vensseq INCREMENT BY 1 START WITH10

MAXVALUE100 MINVALUE10 CYCLE CACHE5;

下面对序列venseq修改的语句,错误的是( A ).(选择一项)

a)ALTER SEQUENCE venseq START WITH 1

b)ALTER SEQUENCE venseq MAXVALUE 90

c)ALTER SEQUENCE venseq NOMINVALUE

d)ALTER SEQUENCE venseq NOCACHE

55.在Oracle中,下列(BD)语句可以合法地创建一个函数。(选择二项)

a. CREATE FUNCTION func_name(cdcode NUMBER) RETURN CHAR IS

DECLARE dis_cd CHAR(15);

BEGIN…END;

b. CREATE FUNCTION func_name(cdcode NUMBER) RETURN CHAR IS

dis_cd CHAR(15);

BEGIN…END;

c. CREATE FUNCTION func_name(cdcode NUMBER) IS

BEGIN…END

d. CREATE FUNCTION func_name(cdcode NUMBER)

RETURN CHAR IS

BEGIN…END;

56) 当Oracle服务器启动时,下列哪种文件不是必须的(D)。

a) 数据文件

b) 控制文件

c) 日志文件

d) 归档日志文件

57) 在Oracle中,一个用户拥有的所有数据库对象统称为(B)。

a) 数据库

b) 模式

c) 表空间

d) 实例

58) 在Oracle中,用于计算数值连续的排位,且相同数值排位相同的分析函数是(C)。

a) ROW_NUMBER

b) RANK

c) DENSE_RANK

d) ROWNUM

59) 在Oracle数据库中,(B)用户模式存储数据字典表和视图对象。

a) SYSTEM

b) SYS

c) SCOTT

d) SYSDBA

60) 在Oracle PL/SQL中,可用于执行动态SQL的语句是(D)。

a) EXECUTE

b) START

c) RUN

d) EXECUTE IMMEDIATE

61) Oracle提供的(D),能够在不同硬件平台上的Oracle数据库之间传递数据。

a) 归档日志运行模式

b) RECOVER命令

c) 恢复管理器(RMAN)

d) Export和Import工具

62) 在PL/SQL中,下列哪个DML语句关联的隐式游标可能会引发TOO_MANY_ROWS异常(B)。

a) INSERT

b) SELECT INTO

c) UPDATE

d) DELETE

63) 在Oracle中,当执行一条DML语句时即引起触发器执行一次,不论该语句影响几行数据,这种触发器叫做(A)。

a) 语句级触发器

b) 行级触发器

c) INSTEAD OF触发器

d) 数据库触发器

64) 在Oracle中,导出实用程序可用于(C)。

a) 将数据库恢复到一个时间点的状态

b) 从介质故障中恢复数据库

c) 恢复用户因为误操作删除的表

d) 以上都不对

65) 在Oracle中,模式是指(B)。

a) 数据库中的物理组成对象

b) 数据库中的逻辑组成对象

c) 索引方式

d) 数据库体系结构

66) 在Oracle中,数据字典表和视图存储在(B)。

a) USERS表空间

b) SYSTEM表空间

c) TEMPORARY表空间

d) 任意表空间

67) 在Oracle中,在一个列上使用反向键索引的主要原因是(A)。

a) 该列上的值是连续增长的

b) 该列包含了许多不同的值

c) 该列的取值在一定的范围内

d) 该列经常用于降序排序

68) 在Oracle中,当需要使用显式游标更新或删除游标中的行时,UPDATE或DELETE语句必须使用(A)子句。

a) WHERE CURRENT OF

b) WHERE CURSOR OF

c) FOR UPDATE

d) FOR CURSOR OF

69) 在Oracle中,使用下列的语句:

CREATE PUBLIC SYNONYM parts FOR Scott.inventory;完成的任务是(D)。

a) 将Scott.inventory对象的访问权限赋予所有用户

b) 指定了新的对象权限

c) 指定了新的系统权限

d) 给Scott.inventory对象创建一个公用同义词parts

70) 在Oracle中,执行如下PL/SQL语句后,变量myvar的数据类型为(C)。

CREATE TYPE car AS OBJECT ( id NUMBER, model VARCHAR2(25), color

VARCHAR2(15) );…DECLARE myvar car.model%TYPE;BEGIN…END;

a) NUMBER

b) car类型

c) VARCHAR2

d) OBJECT

71) 在Oracle 中,用下列语句定义了一个过程:

CREATE OR REPLACE PROCEDURE text(a IN V ARCHAR2,

b IN OUT NUMBER,

c OUT V ARHAR2) IS

BEGIN

……

END;

假定使用的变量都已定义,下面对过程test 的调用语法正确的是(C)(选择一项)

A)test(‘String1’,50,v_str2)

B)test(v_str1,v_num1,’String2’)

C)test(‘String1’,v_num1,v_str2)\

D)test(v_str1,20,v)_str2)

72) Orcale中(B)函数将CHAR或VARCHAR数据类型转换为DA TE数据类型。(选择一项)

a) date

b) to_date

c) todate

d) ctodate

73)在Oracle 中,以下是STUDENTS表的结构:

STUDENT_ID NUMBER NOT NULL, PRIMARY KEY (学生编号)

STUDENT_NAME VARCHAR2(30) (学生姓名)

COURSE_ID VARCHAR2(10) NOT NULL (课程编号)

MARKS NUMBER (分数)

要查询课程编号为”SQL”的分数排在前10名的学生,以下(D)语句能实现功能。

(选择一项)

a) SELECT student_id,marks,ROWNUM “Rank” FORM student

WHERE ROWNUM <= 10 AND course_id =”SQL” orders_id =”SQL” ORDER BY MARKS DESC b) SELECT STUDENT_ID,MARKSMROWNUM “RANK” FROM STUDENT WHERE ROWNUM < = 10 AND COURSE_ID=”SQL” ORDERS BY MARKS

c) SELECT student_id,marks,ROWNUM “Rank” FORM student

WHERE ROWNUM <= 10 AND course_id =”SQL” orders_id =”SQL” ORDER BY MARKS DESC d) SELECT student_id,marks,ROWNUM “Rank” FORM student

WHERE ROWNUM <= 10 AND course_id =”SQL” STUDENT_id =”SQL” ORDER BY MARKS WHERE ROWNUM <=10

74)在Oracle中下列关于PL/SQL的说法正确的是(BD) (选择两项)

a) PL/SQL支持DML,DDL和 DCL

b) PL/SQL 支持游标操作和事务

c)可执行部分的是必须的

D)异常处理部分是必选的

75) 在Oracle中,有表Person,储存数据如下,执行以上查询,结果是(D)。(选择一项)

ID NAME TEL

001 AMBER 1234

002 AMY 2345

003 EMIL Y 4567

004 EAP 5678

Select tel from person where name like ‘a%’;

a)1234

2345

56789

b)2345

c)2345

5678

d)1234

2345

76) PL/SQL块中可以使用下列(bc)命令。(选择两项)

a) TRUNCATE

b) DELETE

c) SA VEPOINT

d) ALTER TABLE

77) 用户定义的数据类型可以声明为下列(abcd)。(选择四项)

a) FINAL

b) NOT FINAL

c) INSTANTIABLE

d) NOT INSTANTIABLE.

e) COMPLEX

78) 有语句如下:

TYPE curtype IS REF CURSOR RETURN book.price%TYPE;

表book的列的数据类型是NUMBER(5);则(d)。(选择一项)

a) curtype可以返回INTEGER类型数据

b) curtype可以返回NUMBER(5,2)类型数据

c) curtype可以返回V ARCHAR2(10)类型数据

d) 以上皆非

79) 使用下列(abc)将Null 值转换为实际值。(选择三项)

a) NVL

b) NVL2

c) NULLIF

d) To_number

80) 使用(abc)数据类型时,数据总是存储在数据库内的。(选择三项)

a) BLOB

b) CLOB

c) NCLOB

d) BFILE

81) 在表tab1中有列为col1,其数据类型为INTEGER,在PL/SQL的DECLARE部分声明了一个变量var1,语句为:

var1 tab1.col1%TYPE;

不久后,执行了语句:

ALTER TABLE tab1 MODIFY(col1(NUMBER(5,2));

则var1的数据类型为(b)。(选择一项)

a) 整数型

b) 数字型

c) 字符型

d) 以上皆非

82) 当两位用户中的每一位都对一个单独的对象进行了锁定,而他们又要获取对方对象的锁时,将会发生(b)。(选择一项)

a) 共享锁

b) 死锁

c) 排他锁

83) DBMS_LOB数据包提供的(d),返回LOB值的长度。(选择一项)

a) LENGTH

b) SUBSTR

c) INSTR

d) GETLENGTH

84) Oracle数据库由一个或多个称为(b)的逻辑存储单元组成。(选择一项)

a) 表

b) 表空间

c) 行

d) 单元

85) (b)可以从过程返回多个值。(选择一项)

a) 使用IN参数

b) 使用OUT参数

c) 使用指针

d) 不能

86) 同义词有以下(abc)用途。(选择三项)

a) 简化SQL 语句

b) 隐藏对象的名称和所有者

c) 提供对对象的公共访问

d) 显示对象的名称和所有者

87) PL/SQL为内存耗尽时,预定义了(c)异常。(选择一项)

a) NO_DATA_FOUND

b) MEMORY_ERROR

c) STORAGE_ERROR

d) NO_MEMEORY_FOUND

88) 使用(a)命令结束一个事务。(选择一项)

a) Commit

b) Rollback

c) Savepoint

89) 在创建序列的过程中,下列(a)选项指定序列在达到最大值或最小值后,将继续从头开始生成值。(选择一项)

a) Cycle

b) Nocycle

c) Cache

d) Nocache

90) 组合索引(也称为b)是在表的多个列上创建的索引。(选择一项)

a) 压缩索引

b) 连接索引

c) 一致索引

d) 位图索引

91) V ARCHAR2 数据类型具有两种子类型,即(bc)。(选择两项)

a) CHARACTER

b) STRING

c) V ARCHAR

d) CHAR

92) 数据包airline中有函数book_ticket,其定义如下:

FUNCTION book_ticket(para1 CHAR)RETURN DA TE IS

下列(d)程序段正确地调用该数据包的函数。(选择一项)

a) DECLARE value1 CHAR(10);BEGIN value1 := airline.book_ticket(10);

b) DECLARE value1 CHAR(10);BEGIN value1 := airline.book_ticket(‘10’);

c) DECLARE value1 DA TE;BEGIN value1 := airline.book_ticket(10);

d) DECLARE value1 DA TE;BEGIN value1 := airline.book_ticket(‘10’);

93) 在PL/SQL中,在执行任何DML语句前,SQL%NOTFOUND的值为(c)。(选择一项)

a) NOTFOUND

b) TRUE

c) NULL

d) FALSE

94) 程序包的优点有(bcde)。(选择四项)

a) 伸缩性

b) 更轻松的应用程序设计

c) 信息隐藏

d) 新增功能

e) 性能更佳

95) 对一个视图myView创建一个触发器mytrigger,语句为(c)。(选择一项)

a) CREATE TRIGGER mytrigger

BEFORE

INSERT ON myView

BEGIN

---

b) CREATE TRIGGER mytrigger

INSERT ON myView

BEGIN

---

c) CREATE TRIGGER mytrigger

INSTEAD OF

INSERT ON myView

BEGIN

---

96) 在FUNCTION主体中,可能有(bcd)个RETURN语句。(选择三项)

a) 0

b) 1

c) 2

d) 3

97) 有一段PL/SQL程序如下所示:

var1 := 10;

LOOP

EXIT WHEN var1 > 12;

var1 := var1 +1;

DBMS_O UTPUT.PUT_LINE(‘A’);

END LOOP;

输出为(c)。(选择一项)

a) A

b) A A

c) A A A

d) A A A A

98) 触发器有以下(ac)类型。(选择两项)

a) 应用程序触发器

b) 引擎触发器

c) 数据库触发器

99) 当Oracle服务器启动时,下列哪种文件不是必须的()。

a) 数据文件

b) 控制文件

c) 日志文件

d) 归档日志文件

100) 在Oracle中,一个用户拥有的所有数据库对象统称为()。

a) 数据库

b) 模式

c) 表空间

101) 在Oracle中,用于计算数值连续的排位,且相同数值排位相同的分析函数是()。

a) ROW_NUMBER

b) RANK

c) DENSE_RANK

d) ROWNUM

102) 在PL/SQL中,下列哪个DML语句关联的隐式游标可能会引发TOO_MANY_ROWS 异常()。

a) INSERT

b) SELECT INTO

c) UPDATE

d) DELETE

103) 在Oracle中,当执行一条DML语句时即引起触发器执行一次,不论该语句影响几行数据,这种触发器叫做()。

a) 语句级触发器

b) 行级触发器

c) INSTEAD OF触发器

d) 数据库触发器

104) 在Oracle中,导出实用程序可用于()。

a) 将数据库恢复到一个时间点的状态

b) 从介质故障中恢复数据库

c) 恢复用户因为误操作删除的表

d) 以上都不对

105) 在Oracle中,模式是指()。

a) 数据库中的物理组成对象

b) 数据库中的逻辑组成对象

c) 索引方式

d) 数据库体系结构

106) 在Oracle中,数据字典表和视图存储在()。

a) USERS表空间

b) SYSTEM表空间

c) TEMPORARY表空间

d) 任意表空间

107) 在Oracle中,在一个列上使用反向键索引的主要原因是()。

a) 该列上的值是连续增长的

b) 该列包含了许多不同的值

c) 该列的取值在一定的范围内

d) 该列经常用于降序排序

108) 在Oracle中,当需要使用显式游标更新或删除游标中的行时,UPDATE或DELETE 语句必须使用()子句。

a) WHERE CURRENT OF

b) WHERE CURSOR OF

c) FOR UPDATE

d) FOR CURSOR OF

109) 在Oracle中,使用下列的语句:

CREATE PUBLIC SYNONYM parts FOR Scott.inventory;

完成的任务是()。

a) 将Scott.inventory对象的访问权限赋予所有用户

b) 指定了新的对象权限

c) 指定了新的系统权限

d) 给Scott.inventory对象创建一个公用同义词parts

110) 在Oracle中,执行如下PL/SQL语句后

CREATE TYPE car AS OBJECT ( id NUMBER, model V ARCHAR2(25), color V ARCHAR2(15) );…

DECLARE

myvar car.model%TYPE;

BEGIN

END;

变量myvar的数据类型为()。

a) NUMBER

b) car类型

c) V ARCHAR2

d) OBJECT

111) 在Oracle数据库中,()用户模式存储数据字典表和视图对象。

a) SYSTEM

b) SYS

c) SCOTT

d) SYSDBA

112) 在Oracle PL/SQL中,可用于执行动态SQL的语句是()。

a) EXECUTE

b) START

c) RUN

d) EXECUTE IMMEDIATE

113) Oracle提供的(),能够在不同硬件平台上的Oracle数据库之间传递数据。

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练习题目

1.习题:列出至少有一个员工的所有部门 select distinct d.deptno,d.dname from emp e join dept d on e.deptno=d.deptno; select distinct deptno from emp having count(empno)>=1 group by deptno; 2.习题:列出工资比“Smith”多的所有雇员。 select ename,sal from emp where sal>(select sal from emp where ename='SMITH'); 3.习题:列出所有员工的姓名和其直接上司的姓名① select e.ename,m.ename from emp e left join emp m on e.mgr=m.empno;②select emp.ename,mg.ename from emp join(select e.ename,e.empno from emp e join(select distinct mgr from emp where mgr is not null) m on empno=m.mgr) mg on emp.mgr=mg.empno; 4.习题:列出雇佣日期早于其直接上级的所有雇员的编号、姓名和部门名称 select empno,ename,dname from(select emp.empno,emp.ename,deptno dno from emp join(select e.ename,e.empno,e.hiredate from emp e join(select distinct mgr from emp where mgr is not null) m on empno=m.mgr) mg on emp.mgr=mg.empno and emp.hiredate

Oracle 数据库安全综述

Oracl e 数据库安全综述 邓明翥 2007061035 摘要信息时代,数据安全性和日俱增。对于企业数据库来说。安全性和系统性能同样重要.一旦数据丢失或者非法用户侵入,对于任何一个使用系统来说都是致命的问题.提高Oracle数据库安全性就要做好安全管理工作.文章从Oracle 入手从安全机制和安全策略两个角度分析其安全,并给出一些安全管理操作的具体方法,最后通过对比给出其安全策略的优点。 1数据库系统简介 1.1背景介绍 随着网络技术的飞速发展。网络安全问题日渐突出。数据库技术自20世纪60年代产生至今,也已得到了快速的发展和广泛使用,数据库中由于数据大量集中存放,且为众多用户直接共享,安全性问题尤为突出。 数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。经过几十年的发展,数据库技术在理论上得到不断完善的同时,也广泛地投入到财务、教育、电子政务、金融等领域中得到大规模的使用。目前,市场上不仅有能满足个人用户需要的桌面小型数据库管理系统,也有能提供大规模数据管理功能、使用在网络环境的大中型数据库管理系统。 1.2数据库系统产品简介 随着大规模数据组织和管理日益引起人们的关注,数据库系统显现出越来越大的市场价值,许多公司都推出了各具特色的数据库管理系统。下面对在市场上占据主流、具有一定代表意义的两款数据库系统做简要介绍。 1.2.1SQL Server简介 SQL Server是由Microsoft公司开发和推广的关系数据库管理系统。它最初是由Microsoft、Sybase、Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。由于Microsoft公司强大的开发能力和市场影响力,自1988年起,不断有新版本SQL Server推出并迅速占领中小型数据库市场。根据来自BZ Research2007年数据库整合和统计报告的数据,SQL Server的市场占有率为74.7%,高居第一。其中,SQL Server2000的用户群最为庞大,SQL Server2008是最新版本。本文所提及的SQL Server,如未特别指出,都指的是SQL Server2000。 SQL Server具有典型的C/S结构。使用图形化用户界面,使系统管理和数据库管理更加直观、简介。同时,还提供了丰富的编程接口工具,为用户进行程序

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数据库试题

ORACLE数据库试题 74 姓名:戴希引 一、选择题(总分50分,每题1分,*为多选)42 1.下列不属于ORACLE的逻辑结构的是(C) A 区 B 段 C 数据文件 D表空间 2. 下面哪个用户不是ORACLE缺省安装后就存在的用户( A ) A . SYSDBA B. SYSTEM C. SCOTT D. SYS 3 下面哪个操作会导致用户连接到ORACLE数据库,但不能创建表(A ) A 授予了CONNECT的角色,但没有授予RESOURCE的角色 B没有授予用户系统管理员的角色 C数据库实例没有启动 D数据库监听没有启动 4. 在Oracle中,当FETCH语句从游标获得数据时,下面叙述正确的是( C ) A 游标打开 B游标关闭 C当前记录的数据加载到变量中 D创建变量保存当前记录的数据 5. 在Oracle中,下面关于函数描述正确的是( A D)* A SYSDATE函数返回Oracle服务器的日期和时间 B ROUND数字函数按四舍五入原则返回指定十进制数最靠近的整数 C ADD_MONTHS日期函数返回指定两个月份天数的和 D SUBSTR函数从字符串指定的位置返回指定长度的子串 6. 阅读下面的PL/SQL程序块: BEGIN INSERT INTO employee(salary,last_name,first_name)VALUES(35000,’Wang’,'Fre d ’); SAVEPOINT save_a; INSERT INTO employee(salary,last_name,first_name) VALUES(40000,’Woo’,'David’); SAVEPOINT save_b; DELETE FROM employee WHERE dept_no=10; SAVEPOINT save_c; INSERT INTO employee(salary,last_name,first_name) VALUES(25000,’Lee’,'Bert’); ROLLBACK TO SAVEPOINT save_c;

oracle数据库安全管理制度

竭诚为您提供优质文档/双击可除oracle数据库安全管理制度 篇一:规章制度之数据备份及应急恢复制度 医院信息系统运行与应用管理规章制度汇编 数据备份工作制度及应急恢复工作规定 数据备份工作制度 1、数据备份是备份his系统所有的数据,包括病人费用信息和医疗信息,关系到整个系统的正常运转,影响到全院的医疗工作的正常秩序,责任重大,数据管理员要有高度的事业心、责任感和一丝不苟万无一失的严谨工作作风。 2、严格按照《数据备份方案》要求,逐条认真操作,每天做逻辑备份,每周六作全部备份,每月做一次冷备份. 3、每两周对数据要进行一次恢复试验,以确保备份数据的安全可靠。 4、为了整理数据库,每月对oRacle数据库进行一次expoRt和inpoRt。 5、根据数据增长量,应定期对过期数据进行处理。 6、每天对服务器进行仔细检查,主要查看文件是否有损坏,cpu和内存占用资源情况,客户端登录和访问数据库

是否正常等。 7、如系统发现异常情况,要马上处理,处理不了要立即汇报,并提出建议。 8、严格遵守保密制度和网络管理规范,绝对保密数据管理员口令,当有其他人对服务器进行操作时,要亲自在场并作好详细记录,有第二者知道口令时要及时更改口令。 9、每次对服务器进行操作时,认真作好登录统计,不得马虎。 10、要熟练掌握nt、oRacle数据库知识,不断提高业务水平。 11、数据备份磁带要异地存放,安全保管。 12、如不按规定执行出现重大事故,追究责任者的一切责任并严肃处理。 应急恢复工作规定 1、当计算机网络中心服务器确认出现故障时,由系统管理员,按《数据备份恢复方案》进行系统恢复。 2、系统管理员由信息科主任指定专人负责恢复。当人员变动时应有交接手续。 3、当网络线路不通时,网络系统维护人员应立即到场进行维护,当光纤损坏时应立即使用备用光纤进行恢复,交换机出现故障时,应使用备用交换机,即刻通知前台工作站工作人员使用。

Oracle数据库简答题-考试重点

1.简单描述Oracle数据库体系结构的组成及其关系? 答:Oracle数据库体系结构由物理存储结构、逻辑存储结构和实例组成。其中物理存储结构描述了操作系统层次数据的存储与管理,包括数据文件、日志文件、重做日志文件等组成。逻辑结构描述了数据库内部数据的组织与管理,由表空间、段、区、块组成。实例是数据库运行的软件结构,由内存结构和后台进程组成。数据库运行过程中,用户的操作在内存区中进行,最终通过后台进行转化为对数据库的操作。 2、说明Oracle数据库物理存储结构的组成? Oracle数据库物理结构包括数据文件、控制文件、重做日志文件、初始化参数文件、归档文件、口令文件等。在控制文件中记录了当前数据库所有的数据文件的名称与位置、重做日志文件的名称与位置,以及数据文件、重做日志文件的状态等。 3、说明Oracle数据库数据文件的作用? 数据文件中保存了数据库中的所有数据,包括数据字典以及用户数据。 4、说明Oracle数据库控制文件的作用? 控制文件保存数据库的物理结构信息,包括数据库名称、数据文件的名称与状态、重做日志文件的名称与状态等。在数据库启动时,数据库实例依赖初始化参数定位控制文件,然后根据控制文件的信息加载数据文件和重做日志文件,最后打开数据文件和重做日志文件。 5、说明Oracle数据库重做日志文件的作用? 重做日志文件是以重做记录的形式记录、保存用户对数据库所进行的修改操作,包括用户执行DDL、DML语句的操作。如果用户只对数据库进行查询操作,那么查询信息是不会记录到重做日志文件中的。 6、说明数据库逻辑存储结构的组成和相互关系。 Oracle9i数据库的逻辑存储结构分为数据块、区、段和表空间四种。其中,数据块是数据库中的最小I/O单元,由若干个连续的数据块组成的区是数据库中最小的存储分配单元,由若干个区形成的段是相同类型数据的存储分配区域,由若干个段形成的表空间是最大的逻辑存储单元,所有的表空间构成一个数据库。 7、说明数据库表空间的种类,以及不同类型表空间的作用。 数据库表空间分为系统表空间和非系统表空间两类,其中非系统表空间包括撤销表空间、临时表空间和用户表空间等。 SYSTEM表空间主要用于存储数据库的数据字典、PL/SQL程序的源代码和解释代码、数据库对象的定义。撤销表空间专门进行回退信息的自动管理。临时表空间是专门进行临时段管理的表空间。用户表空间用于分离不同应用的数据,而且能够减少读取数据文件时产生的I/O冲突。 8、说明数据库、表空间、数据文件以及数据库对象之间的关系。 一个数据库由一个或多个表空间构成,不同的表空间用于存放不同应用的数

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练习题及答案

WORD格式 1.找出各月倒数第3天受雇的所有员工 selectenamefromempwherelast_day(hiredate)-2=hiredate; 2.找出早于12年前受雇的员工 selectenamefromempwheremonths_between(sysdate,hiredate)>=144; 3.以首字母大写的方式显示所有员工的姓名 selectinitcap(ename)fromemp; 4.显示正好为5个字符的员工的姓名 selectenamefromempwherelength(ename)=5; 5.显示不带有“R”的员工姓名 selectenamefromempwhereinstr(ename,'R',1,1)=0; 6.显示所有员工姓名的前三个字符 selectsubstr(ename,1,3)fromemp; 7.显示所有员工的姓名,用“a”替换所有的“A” selectename,replace(ename,'A','a')fromemp; 8.显示满10年服务年限的员工的姓名和受雇日期 selectename,hiredatefromempwheremonths_between(sysdate,hiredate)>=120; 9.显示员工的详细资料,按姓名排序 select*fromemporderbyenamedesc; 10.显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面selectename,hiredatefromemporderbyhiredate; 11.显示所有员工的姓名、工作和薪金,按照工作的降序排序,若工作相同则按薪金排序selectename,job,salfromemporderbyjobdesc,sal; 12.显示所有员工的姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份 相同则将最早年份的员工排在最前面 selectename,to_char(hiredate,'yyyy')h,to_char(hiredate,'mm')m fromemporderbym,h; 13.显示在一个月为30天的情况所有员工的日薪金,忽略余数 selecttrunc(sal/30)fromemp; 14.找出在(任何年份的)2月受聘的所有员工 selectenamefromempwhereto_char(hiredate,'mm')=2; 15.对于每个员工显示其加入公司的天数 selectename,sysdate-hiredatefromemp; 16.显示姓名字段的任何位置包含“A”的所有员工姓名 selectenamefromempwhereinstr(ename,'A',1,1)<>0; selectenamefromempwhereenamelike'%A%'; 专业资料整理

Oracle数据库安全加固文档

1 端口设置 1.1 避免使用默认的监听端口 配置项 名称 避免使用默认的监听端口 检查方法 1检查$ORACLE_HOME/network/admin/listener.ora中是否有port=1521一项。 操作步骤 1 备份$ORACLE_HOME/network/admin/目录下的tnsnames.ora, listener.ora 文件 2 备份$ORACLE_HOME/dbs目录下的spfileSid.ora和initSid.ora 3执行$ lsnrctl stop 关闭Listener 4用vi修改listener.ora中的端口号1521为其他端口 5用SQL>startup immediate 关闭数据库 6 修改initSid.ora添加一项LOCAL_LISTENER=listener1 7 在tnsnames.ora中添加一项 listener1 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1522)) ) ) 8 SQL>create spfile from pfile 9 $ lsnrctl start 10 SQL>startup 启动数据库 回退操作 关闭Listener和数据库,恢复备份的文件到原来的目录,重启Listener和数据库。 风险 1.修改默认端口会影响到目前使用该数据库的应用,需要这些应用同步修改为新的端口 2.需要关闭重启数据库以及关闭重启Listener来完成端口的修改 2 用户与权限 2.1 设置LISTENER的启动关闭密码 配置项 名称 设置LISTENER的启动关闭密码 检查方法 检查$ORACLE_HOME/network/admin/listener.ora文件中是否有PASSWORDS_LISTENER一项,若有说明密码已设定。 操作步骤1 备份$ORACLE_HOME/network/admin/listener.ora文件2设置步骤 $ lsnrctl

oracle考试试题及答案

试题一 一、填空题(每小题4分,共20分) 1、数据库管理技术经历了人工管理、文件系统、数据库系统三个阶段 2、数据库三级数据结构是外模式、模式、内模式 3、Oracle数据库中,SGA由数据库缓冲区,重做日志缓冲区,共享池组成 4、在Oracle数据库中,完正性约束类型有Primay key约束。Foreign key约束,Unique约束,check约束,not need约束 5、PL/SQL中游标操作包括声明游标,打开游标,提取游标,关闭游标 二、正误判断题(每小题2分,共20分) 1、数据库中存储的基本对象是数据(T) 2、数据库系统的核心是DBMS(T) 3、关系操作的特点是集合操作(T) 4、关系代数中五种基本运算是并、差、选择、投影、连接(F) 5、Oracle进程就是服务器进程(F) 6、oraclet系统中SGA所有用户进程和服务器进程所共享(T) 7、oracle数据库系统中数据块的大小与操作系统有关(T) 8、oracle数据库系统中,启动数据库和第一步是启动一个数据库实例(T) 9、PL/SQL中游标的数据是可以改变的(F) 10、数据库概念模型主要用于数据库概念结构设计() 三、简答题(每小题7分,共35分) 1、何谓数据与程序的逻辑独立性和物理独立性? 2、试述关系代数中等值连接与自然连接的区别与联系? 3、何谓数据库,数据库设计一般分为哪些阶段? 4、简述Oracle逻辑数据库的组成?

5、试任举一例说明游标的使用方法? 五、设有雇员表emp(empno,ename,age,sal,tel,deptno), 其中:empno-----编号,name------姓名,age -------年齡,sal-----工资,tel-----电话 deptno-----部门号。 请按下列要求分别晨SQL*PLUS下编程。(每小题3分,共15分)?1、查询家有电话的职工信息。 ?2、查询工资在500至800元之间的雇员信息 ?3、按年龄递增顺序显示雇员编号、姓名、年龄、工资 ?4、求部门号为D_01的平均工资 ?5、查找部门号为D_01的40岁以上而工资在400元以下的雇员名单。 1、SQL>SELECT * FROM emp WHERE tel NOT NULL; 2、SQL>SELECT * FROM emp WHERE BETWEEN 500 AND 800; 3、SQL>SELECT empno,ename,age,sal FROM emp ORDER BY age ASC; 4、SQL>SELECT AVG(sal) FROM emp WHERE deptno='D_01'; 5、SQL>SELECT ename FROM emp WHERE deptno='D_01' AND age>40 AND Sal<400; ? 试题一答案 一、填空题 1、人工管理、文件系统、数据库系统 2、外模式、模式、内模式 3、数据库缓冲区,重做日志缓冲区,共享池 4、Primay key约束。Foreign key约束,Unique约束,check约束,not need 约束 5、声明游标,打开游标,提取游标,关闭游标 二、正误判断题 1、T 2、T 3、T 4、F 5、F 6、T 7、T 8、T 9、F 三、(略) 五、 1、SQL>SELECT * FROM emp WHERE tel NOT NULL; 2、SQL>SELECT * FROM emp WHERE BETWEEN 500 AND 800; 3、SQL>SELECT empno,ename,age,sal FROM emp ORDER BY age ASC; 4、SQL>SELECT AVG(sal) FROM emp WHERE deptno='D_01'; 5、SQL>SELECT ename FROM emp WHERE deptno='D_01' AND age>40 AND Sal<400; 试题二

Oracle选择题

1 下列哪一项不是一个角色______。 A、CONNECT B、DBA C、RESOURCE D、CREATE SESSION 2 SQL语句中修改表结构的命令是 A、MODIFY TABLE B、MODIFY STRUCTURE C、ALTER TABLE D、ALTER STRUCTURE 3 在关系模型中,实现"关系中不允许出现相同元组"的约束是通过_____。 A、候选键 B、主键 C、外键 D超键 4 下面哪个语句关于GROUP BY 和HAVING语句的使用是正确的? A、SELECT JOB_ID , DEPARTMENT_ID , AVG(SALARY) FROM EMPLOYEES GROUP BY JOB_ID HAVING AVG(SALARY) > 3000; B、SELECT JOB_ID , DEPARTMENT_ID , AVG(SALARY) FROM EMPLOYEES GROUP BY JOB_ID ,DEPARTMENT_ID HAVING AVG(SALARY) > 3000; C、SELECT JOB_ID , DEPARTMENT_ID , AVG(SALARY) FROM EMPLOYEES GROUP BY AVG(SALARY) HAVING AVG(SALARY) > 3000; D、SELECT JOB_ID , DEPARTMENT_ID , AVG(SALARY) FROM EMPLOYEES GROUP BY JOB_ID , DEPARTMENT_ID HAVING SALARY > 3000; 5 从数据库中删除表的命令是? A、DROP TABLE B、ALTER TABLE C、DELETE TABLE D、USE 6 在Oracle中,删除视图用? A、DROP SCHEMA命令 B、CREATE TABLE命令 C、DROP VIEW命令 D、DROP INDEX命令 7 在Oracle中,以下哪个不是模糊查询的关键字? A、LIKE B、BETWEEN C、IN D、AS 8 以下哪个SQL语句是正确的 A、select empid,ename, sum(avg) from Empwhere deptno=10 order by empid,ename B、selectdeptno, avg(avg) from Empgroup by deptno order by deptnoasc C、select ename from emp having avg(sal)>3000 D、select deptno,sum(sal) from emp order by salgroup by deptno 9以下哪个联接是错误的?

oracle安全机制

Oracle安全机制 安全性是评价一个数据库产品的重要指标,直接决定了数据库的优劣。Oracle数据库采用一系列的安全控制机制,以保证数据库的安全性。Oracle数据库在3个层次上采取安全控制机制。(1)系统安全性:在系统级别上控制数据库的存取和使用机制,包括有效的用户和口令、判断用户是否被授予权限可以连接数据库、用户创建数据库对象时可以使用的表空间大小、用户的资源限制、是否启动数据库的审计功能、用户可以进行哪些操作系统等。(2)数据安全性:在数据库模式对象级别上控制数据库的存取和使用机制,包括用户可以存取的模式对象以及在该对象上可以进行的操作等。用户要对某个模式对象进行操作,必须具有该对象相应的对象权限。(3)网络安全性:oracle数据库是网络数据库,因此网络数据库传输的安全性至关重要,主要包括登陆助手、目录管理、标签安全性等。Oracle通过分发Wallet、数字证书、SSL安全套接字和数据秘钥等办法来确保网络数据传输的安全性。 一、系统安全方面采取的安全机制包括用户管理、资源限制和口令管理、权 限管理、角色管理、审计、利用OEM进行安全管理。 1、用户管理 用户是数据库的使用者和管理者,Orcle数据库通过设置用户及其安全属性来控制用户对数据库的访问和操作。用户管理是Oracle数据库安全管理的核心和基础。Oracle数据库中的用户分为两类,一类是创建数据库时系统与定义的用户,而预定义的用户根据作用不同又可以分为三类:1、管理员用户,2、示例方案用户,3、内置用户;另一类是根据应用需要由DBA创建的用户。 可以通过查询数据字典视图dba_users,查看当前数据库中所有用户信息。 如下图所示显示open的用户是已经开启的用户,显示expired & locked的用户是已经过期或是锁定的用户

Oracle-选择题题库

Oracle 选择题题库 1.以下命令哪个是 SQL*PLUS 命令?() A.UPDATE B.EDIT C.SELECT D.ALTER TABLE 2.用SQL*PLUS的_____命令可以查看表的结构信息,包括列的名称和数据类型 A.DESCRIPTION B.DESC C.SHOW TABLE D.SHOW USER 3.Oracle的前端工具是() A.SQL*PLUS B.C++ C.PL/SQL D.JAVA 4.在SQL*PLUS中,如何运行SQL脚本程序( ) A./ B.@脚本C.EXE 脚本D.不能在SQL*PLUS中直接运行脚本5.用命令将SQL*PLUS缓冲区中的内容保存到文件中,使用下列哪种方法( ) A.将缓冲区的内容Ctrl+C,然后再Ctrl+V到文件中即可 B.使用SAVE命令参数是文件路径 C.WRITE 方式,参数是文件路径 D.Oracle会自动保存 6.用来设置一行能够显示的字符长度的命令是( ) A.SET LINESIZE B.SET LINE C.SET LINEBUFFER D.SET SIZELINE 7.以下哪个命令用来设置查询显示结果的列宽 A.SET COLUMN SIZE B.COLUMN 列 FORMAT 长度 C.COLUMN 列长度D.长度 OF COLUMN 8.ORACLE用来判断列值是否为空的操作符是____ A.= NULL B.IS NULL C.AS NULL D.NULL IS 9.在客户定单表(CUSTOMER)中有一列为单价(PRICE),写一个SELECT命令显示所有单价 在500以上的查询语句。 A SELECT * FROM CUSTOMER WHERE PRICE>500; B SELECT * FROM CUSTOMER WHERE PRICE BETWEEN 500 AND *; C SELECT * FROM CUSTOMER WHERE PRICE LIKE '%500%'; D SELECT * FROM CUSTOMER WHER E PRICE>=500; 10.分析以下SQL 命令: SELECT price FROM inventory WHERE price BETWEEN 1 AND 50 AND (price IN(55, 30, 95); 命令执行后的输出结果是:() A 55 B 30 C 95 D NULL 11.分析以下的SQL 命令: SELECT manufacturer_id FROM inventory WHERE manufacturer_id LIKE '%N\%P\%O%' ESCAPE '\'; 命令执行的返回结果是() A 所有包含'NPO'的纪录 B 所有包含'N\P\O'的纪录 C 所有包含'N%P%O'的纪录

oracle习题练习

习题1安装和运行Oracle数据库 一、填空题 1.数据库管理系统采用的数据模型主要有:(网状模型)、(层次模型)和(关系模型)。 2.(交换方式)是指数据库使用者利用数据库管理系统提供的软件工具,直接对数据库进行操作,操作结果立即返回到操作界面。 3.(数据库)是存储在计算机内,按一定数据模型组织的、可共享的数据集合。 4.通常,把每一个类数据对象的个体称为(实体)。 5.对于每一个实体集,可指定一个码为(主码)。 6.Oracle是(面向对象的关系型)数据库管理系统。 7.Oracle系统主要是由(oracle database)和(oracle application)两大产品及Oracle管理程序包等其他产品组成的。 8.从Oracle DataBase 10g开始,通过设置初始化参数(SHAED_SERVERS)可以自动激活共享服务器特征。 9.(Oracle数据库10g企业版)是为关键任务的应用程序(如大业务的在线事务处理(OLTP)环境、查询密集的数据仓库和要求苛刻的因特网应用程序)提供了高效、可靠、安全的数据管理的Oracle DataBase 10g版本。 10.Oracle 10g提供了(Automatic Storage Management ),从而在不需要第三方面产品的情况下实现冗余性和数据分离。 二、选择题 1.两个实体集A和B之间的联系不可能是以下(D)种情况。 A.1:1 B.1 : n C.m : n D.以上答案都不对 2.绘制E-R图时,当一个属性或属性组合指定为主码时,在实体集与属性的连接线上标记( D)。 A.矩形框 B.带圆角矩形框 C.线段 D.斜线 3.绘制E-R图时,实体用(A )表示。 A.矩形框 B.带圆角矩形 C.线段 D.斜线 4.(C)语言是过程化SQL的缩写。

Oracle数据库安全配置手册

Oracle数据库安全配置手册 Version 1.0

版本控制

目录 第一章目的与范围 (1) 1.1目的 (1) 1.2适用范围 (1) 1.3数据库类型 (1) 第二章数据库安全规范 (1) 2.1操作系统安全 (1) 2.2帐户安全 (2) 2.3密码安全 (2) 2.4访问权限安全 (2) 2.5日志记录 (3) 2.6加密 (3) 2.7管理员客户端安全 (3) 2.8安全补丁 (3) 2.9审计 (3) 第三章数据库安全配置手册 (4) 3.1O RACLE数据库安全配置方法 (4) 3.1.1 基本漏洞加固方法 (4) 3.1.2 特定漏洞加固方法 (12)

第一章目的与范围 1.1 目的 为了加强宝付的数据安全管理,全面提高宝付各业务系统的数据安全水平,保证业务系统的正常运营,提高业务服务质量,特制定本方法。 本文档旨在于规范宝付对各业务系统的Oracle数据库进行安全加固处理。 1.2适用范围 本手册适用于对宝付公司的各业务系统的数据库系统加固进行指导。 1.3数据库类型 数据库类型为Oracle 11g。 第二章数据库安全规范 2.1 操作系统安全 要使数据库安全,首先要使其所在的平台和网络安全。然后就要考虑操作系统的安全性。Oracle使用大量用户不需要直接访问的文件。例如,数据文件和联机重做日志文件只能通过Oracle的后台进程进行读写。因此,只有要创建和删除这些文件的数据库管理员才需要在操作系统级直接访问它们。导出转储文件和其他备份文件也必须受到保护。可以把数据复制到其他数据库上,或者是作为复制模式的一部分,或者是提供一个开发数据库。若要保护数据的安全,就要对数

ORACLE数据库习题(有答案)

--1.列出至少有一个雇员的所有部门。 SELECT * FROM DEPT WHERE DEPTNO IN (SELECT DISTINCT DEPTNO FROM EMP); --2.列出薪金比“SMITH”多的所有雇员。 SELECT * FROM EMP WHERE SAL>(SELECT SAL FROM EMP WHERE ENAME='SMITH'); --3.列出所有雇员的姓名及其上级的姓名。 SELECT AS empName, AS mgrName FROM emp ygb,emp sjb WHERE =; --4.列出入职日期早于其直接上级的所有雇员。 SELECT * FROM emp ygb WHERE hiredate<(SELECT hiredate FROM emp sjb WHERE =; --5.列出所有部门的名称和这些部门的雇员编号及姓名(没有雇员的部门包含在内) SELECT dname,ename FROM dept a LEFT JOIN emp b ON =; --6.列出所有JOB 为“CLERK”(办事员)的员工姓名及其部门名称 SELECT ename,dname FROM dept a,emp b WHERE = AND job='CLERK'; --7.列出各种类型的最低薪金,并使最低薪金大于。 SELECT job,MIN(sal) FROM emp GROUP BY job HAVING MIN(sal)>1500; --8.列出从事“SALES”(销售)工作的雇员的姓名,假定不知道销售部的部门编号。 SELECT ename FROM emp WHERE deptno=(SELECT deptno FROM dept WHERE dname='SALES'); --9.列出薪金高于公司平均水平的所有雇员。 SELECT * FROM EMP WHERE SAL>(SELECT AVG(SAL) FROM EMP); --10.列出与“SCOTT”从事相同工作的所有雇员。 SELECT * FROM EMP WHERE JOB=(SELECT JOB FROM EMP WHERE ENAME='SCOTT') AND ENAME<>'SCOTT'; --11.列出薪金等于部门中任何一个雇员薪金的员工姓名和 薪金 SELECT ENAME,SAL FROM EMP WHERE SAL IN(SELECT SAL FROM EMP WHERE DEPTNO=30); SELECT ENAME,SAL FROM EMP WHERE SAL =ANY(SELECT SAL FROM EMP WHERE DEPTNO=30); --12.列出薪金高于部门中所有雇员薪金的员工姓名和薪金SELECT * FROM EMP WHERE SAL >ALL(SELECT SAL FROM EMP WHERE DEPTNO=30); --13.列出所有部门的部门名称、地点以及该部门中雇员的数量 SELECT DNAME,DEPTNO,LOC, (SELECT COUNT(*) FROM EMP E WHERE = AS TOTAL FROM DEPT; --14.列出各种类别工作的最低工资 SELECT job,MIN(sal) FROM emp GROUP BY job; --15.列出各个部门的MANAGER(经理)的最低薪金。 SELECT MIN(sal) FROM emp WHERE job='MANAGER' GROUP BY DEPTNO; --1. 查询所有部门员工的编号、姓名、月薪及奖金。 select empno,ename,sal,comm from emp where deptno=10; --2. 查询员工WHITE的员工编号。 select empno from emp where ename='WHITE'; --3. 查询所有员工的编号及收入。(提示:收入=月薪+奖金)select empno 编号,sal+nvl(comm,0) as 收入from emp; --4. 查询所有员工的编号、姓名、工种及其工龄,按工龄降序排序,工龄相同时按编号升序排序。 Select empno,ename,job,trunc(months_between(sysdate,hiredate)/12) 工龄from emp order by 工龄desc,empno asc; --5. 统计各部门的员工人数及工种类型数。 select deptno,count(*) 人数,count(distinct job) 工种类型数from emp group by deptno; --6. 查询部门人数多于人的部门编号。 select deptno,count(*) from emp group by deptno having count(*) > 3; --7. 统计各部门各种工作类别的最低月薪,显示最低薪金大于的记录。 select deptno,job,min(sal) from emp group by deptno,job having min(sal)>1500; --8. 统计、及部门员工平均工资。 select deptno,coung(*) from emp where deptno in (10,20,30) group by deptno; --9. 查询工资水平在至间的各部门员工人数。 select deptno,count(*) from emp where sal between 2000 and 5000 group by deptno; --10. 查询公司最高领导人的员工编号及姓名。 select empno,ename from emp where mgr is null; --1、编写一查询,显示与Blake在同一部门工作的雇员的姓名和受雇日期,但是Blake不包含在结果内。 select ename,hiredate from emp where deptno in (select deptno from emp where lower(ename)='black') and lower(ename)!='black'; --2、创建一查询,显示工资大于平均工资水平的雇员的编号及姓名,输出结果按工资降序排列。 select empno,ename,sal from emp where sal>(select avg(sal) from emp) order by sal desc; --3、显示位置在Dallas的部门内的雇员的姓名、编号及工作。 select ename,empno,job from emp inner join dept on = where lower(loc)='dallas'; --4、显示被King直接管理的雇员的姓名及其工资。 select , from emp e1 inner join emp e2 on = where lower='king'; --5、显示在Sales部门工作的雇员的部门编号、姓名及工作。 select empno,ename,job from emp inner join dept on = where lower(dname)='sales'; --6、编写一查询,显示与能获得奖金的雇员的奖金和工资同时匹配的雇员的编号和工资。 select ,, from emp e1 inner join emp e2 on = and = where !=; --7、显示与工作在Dallas的雇员的工资及奖金同时匹配的雇员的姓名、部门名称及工资。 select ,, from emp e inner join dept d on = where (sal,nvl(comm,0)) in (select sal,nvl(comm,0) from emp where deptno in (select deptno from dept where lower(loc)='dallas') ); --8、创建一查询,显示能获得与Scott一样工资和奖金的其他雇员的姓名、受雇日期及工资。 select ename,hiredate,sal from emp where (sal,nvl(comm,0)) in

相关文档