Oracle笔试题

来源:互联网 发布:asp.net编程软件 编辑:程序博客网 时间:2024/06/06 04:29

1、下列不属于ORACLE的逻辑结构的是()

A、区

B、段

C、数据文件

D、表空间

答案:C

2、下面哪个用户不是ORACLE缺省安装后就存在的用户( )

ASYSDBA

BSYSTEM

CSCOTT

DSYS

答案:A

3、下面哪个操作会导致用户连接到ORACLE数据库,但不能创建表( )

A、授予了CONNECT的角色,但没有授予RESOURCE的角色

B、没有授予用户系统管理员的角色

C、数据库实例没有启动

D、数据库监听没有启动

答案:A

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

A、汇总

B、分析

C、分组

D、单行

答案:B

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

A、FOR INSERT

B、FOR UPDATE

C、FOR DELETE

D、FOR REFRESH

答案:B

6、在Oracle中,你以SYSDBA登录,CUSTOMER表位于Mary用户方案中,下面哪条语句为数据库中的所有用户创建CUSTOMER表的同义词( )。

ACREATE PUBLIC SYNONYM cust ON mary.customer;

BCREATE PUBLIC SYNONYM cust FOR mary.customer;

CCREATE SYNONYM cust ON mary.customer FOR PUBLIC;

D、不能创建CUSTOMER的公用同义词。

答案:B

7、 在Oracle中,当FETCH语句从游标获得数据时,下面叙述正确的是( )。

A、游标打开

B、游标关闭

C、当前记录的数据加载到变量中

D、创建变量保存当前记录的数据

答案:C

8、 在Oracle中,表VENDOR包含以下列:

VENDOR_ID NUMBER Primary Key

NAME VARCHAR2(30)

LOCATION_ID NUMBER

ORDER_DT DATE

ORDER_AMOUNT NUMBER(8,2)

下面对表VENDOR运用分组函数的子句合法的是( )。

AFROM MAX(order_dt)

BSELECT SUM(order_dt)

CSELECT SUM(order_amount)

DWHERE MAX(order_dt) = order_d

答案:C

9、 在Oracle中,表EMP包含以下列:

……

NAME VARCHAR2(20)

ADDR VARCHAR2(60)

……

要以NAMEs address is ADDR格式返回数据,以下SQL语句正确的是( )。 的两边做To_number()

ASELECT NAME + ’’’s address is ‘ + ADDR FROM EMP;

BSELECT NAME || ’’’s address is ‘ || ADDR FROM EMP;

CSELECT NAME + \s address is ‘ + ADDR FROM EMP;

DSELECT NAME || \s address is ‘ || ADDR FROM EMP;

答案:B

10、 在Oracle中,以下不属于集合操作符的是( )。

AUNION

BSUM

CMINUS

DINTERSECT

答案:B

11、 在Oracle中,表分区方式( )建议分区数是2的幂(248等),以获得最平均的数据发布。

A、范围分区

B、列表分区

C、散列分区

D、复合分区

答案:C

12、 在Oracle中,关于锁,下列描述不正确的是( )。

A、锁用于在用户之间控制对数据的并发访问

B、可以将锁归类为行级锁和表级锁

Cinsertupdatedelete语句自动获得行级锁

D、同一时间只能有一个用户锁定一个特定的表

答案:D

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

CREATE SEQUENCE venseq INCREMENT BY 1 START WITH 10

MAXVALUE 100 MINVALUE 10 CYCLE CACHE 5;

下面对序列venseq修改的语句,错误的是( )。

AALTER SEQUENCE venseq START WITH 1;

BALTER SEQUENCE venseq MAXVALUE 90;

CALTER SEQUENCE venseq NOMINVALUE;

DALTER SEQUENCE venseq NOCACHE;

答案:A

14、在Oracle中,使用以下语句创建视图:

CREATE OR REPLACE VIEW pen_view

AS SELECT * FROM order_master

WHERE ostatus = p’ WITH CHECK OPTION CONSTRAINT penv;

当用户试图执行以下语句: UPDATE pen_view SET ostatus = d’ WHERE ostatus=p下列描述正确的是( )。

AOracleostatus修改为d,不提示任何错误

BOracle不执行更新操作,并返回错误信息

COracleostatus修改为d,同时返回错误信息

DOracle不执行更新操作,也不提示任何错误

答案:B

15、在Oracle中,在以下情形建立位图索引可以获得较好的性能( )。

A、在列值唯一的列上建立

B、在列值相差很小的列上建立

C、在列值频繁重复的列上建立

D、在用于保存位图的列上建立

答案:C

16、在Oracle中,通过命令( )可以释放锁。

AINSERT

BDELETE

CROLLBACK

DUNLOCK

答案:C

17、在Oracle中,下面关于簇的描述不正确的是( )。

A、簇是一组表,这些表拥有公共列,并且经常一起使用

B、与每个表及其索引单独存储相比,簇能够提高INSERT语句的性能

C、由于簇表中的所有行都使用相同的列作为公共主键,因此这些列仅为所有表存储一次,从而节省了存储空间

D、经常更新的列不应选作簇键

答案:B

18、在Oracle中,( )操作符允许引用现有的行对象。

ACAST

BREF

CMULTISET

DMAP

答案:B

19、在Oracle中,关于PL/SQL下列描述正确的是( )。

APL/SQL代表Power Language/SQL

BPL/SQL不支持面向对象编程

CPL/SQL块包括声明部分、可执行部分和异常处理部分

DPL/SQL提供的四种内置数据类型是character,integer,float,boolean

答案:C

20、在Oracle中,阅读下列PL/SQL块:

DECLARE

v_lower NUMBER:=2;

v_upper NUMBER:=100;

v_count NUMBER:=1;

BEGIN

I = 2; I <= 2; i++

FOR i IN v_lower..v_lowerLOOP

INSERT INTO test(results)

VALUES (v_count);

v_count := v_count +1;

ENDLOOP;

END;

请问FOR LOOP循环体执行了( )次。

A1

B2

C98

D100

E235:

答案:A

21、在Oracle中,关于子程序的描述不正确的是( )。

A、子程序是已命名的PL/SQL块,可带参数并可在需要时随时调用

B、子程序可以具有声明部分、可执行部分和异常处理部分

C、子程序参数的模式只有INOUT两种模式

D、子程序可分为过程和函数两种类型

答案:C

22、在Oracle中,关于触发器的描述正确的是( )。

A、触发器可以删除,但不能禁用

B、触发器只能用于表

C、触发器可以分为行级和语句级两种

D、触发器是一个对关联表发出insertupdatedeleteselect … for update语句时触发的存储过程

答案:D

23、在Oracle中,你需要创建索引提高薪水审查的性能,该审查要对员工薪水提高12个百分点后进行分析处理,下面哪个create index命令能解决此问题( )。

ACREATE INDEX my_idx_1 ON employee(salary*1.12);

BCREATE UNIQUE INDEX my_idx_1 ON employee(salary);

CCREATE BITMAP INDEX my_idx_1 ON employee(salary);

DCREATE INDEX my_idx_1 ON employee(salary) REVERSE;

答案:A

24、在Oracle中,执行下面的语句:

SELECT ceil(-97.342),

floor(-97.342),  -123.01 -124

round(-97.342),

trunc(-97.342)

FROM dual;

哪个函数的返回值不等于-97( )。

Aceil()

Bfloor()

Cround(0)

Dtrunc()

答案:B

25、在Oracle中,用以下SQL命令创建了一个序列:

CREATE SEQUENCE my_seq

START WITH 394

INCREMENT BY 12

NOMINVALUE

NOMAXVALUE

NOCYCLE

NOCACHE;

用户执行包含my_seq.NEXTVALSQL语句三次,然后执行包含 my_seq.CURRVALSQL语句四次,请问序列my_seq的当前值是( )。

A406

B418

C430

D442

E242:

答案:B

26、在Oracle中,下列哪种标量类型不能保存到数据库表中( )。

ACHAR

BRAW

CDATE

DBOOLEAN

答案:B

27、在Oracle中,不属于游标属性的是( )。

A%NOTFOUND

B%FOUND

C%ISCLOSE

D%ISOPEN

答案:C

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

CREATE OR REPLACE PROCEDURE test(a IN VARCHAR2,

b IN OUT NUMBER,

c OUT VARCHAR2) IS

BEGIN

……

END;

/

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

Atest(String1,50,v_str2)

Btest(v_str1,v_num1,String2)

Ctest(String1,v_num1,v_str2)

Dtest(v_str1,20,v_str2)

答案:C

29、在Oracle中,关于程序包的描述不正确的是( )。

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

B、程序包中私有对象是通过PRIVATE关键字来标识的 程序包体可以包括没有在程序包说明中列出的对象,这些是私有对象,程序包的用户不能使用

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

D、程序包具有模块化、信息隐藏、新增功能及性能更佳等优点

答案:B

30、在Oracle中,用户( )拥有所有内置的程序包。

ASYS

BSYSTEM

CPUBLIC

DDEFAULT

答案:A

31、在Oracle中,关于触发器的描述正确的是( )。

A、触发器可以删除,但不能禁用

B、触发器只能用于表

C、触发器可以分为行级和语句级

D、触发器使一个对关联表发出selectinsertupdatedelete语句时触发的存储过程

答案:D

32、在Oracle中,事务中使用下列SQL语句不会引起锁定( )。

ASELECT

BINSERT

CUPDATE

DDELETE

答案:A

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

AWHERE CURRENT OF

BINTO

CFOR UPDATE

DORDER BY

答案:C

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

AOracleHOME_NAMETNSListener

BOracleServiceSID

COracleHOME_NAMEAgent

DOracleHOME_NAMEHTTPServer

答案:A

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

Aselect seq.ROWNUM from dual;

Bselect seq.ROWIDfrom dual;

Cselect seq.CURRVALfrom dual;

Dselect seq.NEXTVALfrom dual;

答案:C

36ORACLE中,执行语句:SELECT address1||,'||address2||,'||address2 Address” FROM employ;将会返回( )列。

A0

B1

C2

D3

答案:B

37、在Oracle中,INSTEAD OF触发器主要用于( )。

A、表

B、表和视图

C、基于单个表的视图

D、基于多个表的视图

答案:D

38Oracle数据库中,下面( )可以作为有效的列名。

AColumn

B123_NUM

CNUM_#123

D#NUM123

答案:C

39、在Oracle中,以下工具可以逻辑备份数据库对象或整个数据库( )。

ASQL*Plus

B、导出实用程序

C、导入实用程序

DSQL*Loader

答案:B

40Oracle数据库中,通过( )访问能够以最快的方式访问表中的一行。

A、主键

BRowid

C、唯一索引

D、整表扫描

答案:B

41、在Oracle中,使用下列的语句产生序列: CREATE SEQUENCE id; Oracle服务器会预开辟内存并维持的序列值有( )个。

A0

B10

C20

D100

答案:C

42Oracle数据库中,以下( )命令可以删除整个表中的数据,并且无法回滚。

Adrop

Bdelete

Ctruncate

Dcascade

答案:C

43Oralce数据库中,以下( )函数可以针对任意数据类型进行操作。

ATO_CHAR

BLOWER

CMAX

DCEIL

答案:A

44、在Oracle中,语句( )将ORDER_DATE日期值’2000318日’显示为‘200011日’。

ASELECT ROUND(order_date,day)FROM inventory

BSELECT ROUND(order_date,YEAR)FROM inventory

CSELECT ROUND(order_date,month)FROM inventory

DSELECT ROUND(to_char(order_date,yyyy))FROM inventory

答案:B

45、在Oracle中,以下是STUDENTS表的结构: SID NUMBER NOT NULLPrimary Key SNAME VARCHAR2(30) COURSE_ID VARCHAR2(10) NOT NULL MARKS NUMBER"sql hljs">SID NUMBER NOT NULLPrimary Key SNAME VARCHAR2(30) COURSE_ID VARCHAR2(10) NOT NULL MARKS NUMBER 你需要查询参加了课程IDC10的考试,并且分数排在前10名的学生,以下( )语句能够实现此功能。

ASELECT SID,marks,ROWNUM Rank

FORM students

WHERE ROWNUM<=10 AND course_id=C10

ORDER BY marks DESC;

B、SELECT SID,marks,ROWNUMRank

FORM students

WHERE ROWNUM<=10 AND course_id=C10

ORDER BY marks;

C、SELECT SID,marks,ROWNUMRank

FORM (SELECT SID ,marks

FORM students

WHERE ROWNUM<=10 AND course_id=C10

ORDER BY marks DESC;

D、SELECT SID,marks,ROWNUMRank

FORM (SELECT SID ,marks

FORM students

WHERE course_id=C10′ ORDER BY marks DESC)

WHERE ROWNUM<=10;

答案:D

46、在Oracle,用于PL/SQL程序输出调试信息的内置程序包是

ADBMS_STANDARD

BDBMS_ALERT

CDBMS_LOB

DDBMS_OUTPUT

答案:D

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

CREATE PROCEDURE proc(value1 IN VARCHAR2,value2 OUT NUMBER,value3 IN OUT VARCHAR2)

IS

BEGIN

……

END;

假定使用的变量都已定义,下面对过程proc的调用语法正确的是( )

Aproc(tt,10,v3)

Bproc(tt,v2,v3)

Cproc(v1,v2,v3)

Dproc(tt,10,dd)

答案:B

48、在Oracle中,使用以下语句创建视图:

CREATE OR REPLACE VIEW MyView

AS SELECT * FROM orders

Where status=p';

假定orders表中包含10status=p'的记录,当用户试图执行以下语句: UPDATE MyView SET status=o’ WHERE status=p'; 下列描述正确的是()

AOracle不执行更新操作,并返回错误信息

BOracle成功执行更新操作,再次查看视图时返回0行记录

COracle成功执行更新操作,再次查看视图时返回10行记录

DOracle执行更新操作,但提示错误信息

答案:C

49、在Oracle中,下列( )语句不能用于控制游标。

AOpen

BCreate

CFetch

DClose

答案:B

50、在Oracle中,在执行SQL语句时,你不小心使用Update命令将所有的ID值设置成了11111,那么使用( )命令可以取消这一操作。

AEXIT

BCOMMIT

CROLLBACK

DUNDO

答案:C

51、在Oracle中,数据库中的触发器是一个对关联表发出insertupdate或( )语句时触发的存储过程。

Adelete

Bdrop

Ccreate

Dtruncate

答案:A

52、在Oracle 中,使用了如下的语句创建用户TOM,则对于该用户而言,以下说法错误的是( )。CREATE USER TOM IDENTIFIED BY TOMSYS

A、该用户的口令为TOMSYS

BTOM默认为表空间为SYSTEM

CTOM 的临时表空间为TEMP

D、使ORANT UPDATE 命令可以修改TOM的口令

答案:D

53、在Oracle中,下述( )命令会使挂起的事务完成。。

ACOMMIT

BDELETE

CUPDATE

DSELECT

EINSERT

答案:A

54、游标变量的类型是( )

A、隐式游标

B、显示游标

CREF游标

D、循环游标

答案:B

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

A、归档日志。

B、联机日志。

C、日志写入程序。

D、日志文件。

答案:A

56、由于软硬件问题导致的读写数据库文件失败,属于( )故障。

A、实例

B、语句

C、用户进程

D、介质

答案:D

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

Aconstranints

Btables

Cfull

Dfile

答案:C

58、在oracle程序中处理语句时发生的逻辑错误导致( )故障

A、实例

B、介质

C、语句

D、用户进程

答案:C

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

A、分区

B、表

C、全部数据库

D、表空间

答案:B

60、使用( )命令可查看在创建触发器时发生的编译错误

AView errors

BShow errors

CDisplay errors

DCheck errors

答案:B

61( )包用于显示pl/sql块和存储过程中的调试信息

ADbms_output

BDbms_standadr

CDbms_Input

DDbms_session

答案:A

62( )触发器允许触发操作的语句访问行的列值

A、行级 :old :new

B、语句级

C、模式

D、数据库级

答案:A

63、要审计用户执行的create,drop,alterddl语句,应创建( )触发器

A、行级

B、语句级

CInstead of

D、模式

E、数据库

答案:E

64Oracle内置程序包由( )用户所有

Asys

Bsystem

Cscott

DPub lic

答案:A

65( )程序包用于读写操作系统文本文件

ADbms_output

BDbms_lob (图片,电影)

CDbms_random

DUtl_file

答案:D

66、子程序的( )模式参数可以在调用子程序时指定一个常量

Ain

Bout

CIn out

Dinout

答案:A

67、下面关于主事务处理和自主事务处理的说法错误的是( )

A、自主事务处理结果的变化不倚赖于主事务处理的状态

B、自主事务处理提交或回退时,不影响主事务处理的结果

C、自主事务处理提交,对主事务处理是不可见的

D、自主事务处理还可以启动其他自主事务处理

答案:D

68、 在Oracle中,下面关于函数描述正确的是( )。

ASYSDATE函数返回Oracle服务器的日期和时间

BROUND数字函数按四舍五入原则返回指定十进制数最靠近的整数

CADD_MONTHS日期函数返回指定两个月份天数的和

DSUBSTR函数从字符串指定的位置返回指定长度的子串

答案:AD

69、在Oracle中,当从SQL表达式调用函数时,下列描述不正确的是( )。

A、从SELECT语句调用的函数均不能修改数据库表

B、函数可以带有INOUT等模式的参数

C、函数的返回值必须是数据库类型,不得使用PL/SQL类型

D、形式参数必须使用数据库类型,不得使用PL/SQL类型

答案:AC

70、在Oracle中,在SQL提示符下调用PL/SQL过程的方法是()。

A、使用CALL语句

B、使用EXECUTE语句

C、使用RUN语句

D、直接使用过程名

答案:ABC

71、在Oracle中有表”cd”,它包含属性”cdcode”,”category”和”cdname”,要查询category取值为”CLASSIC”或”ROCK”的行,应采用语句( )

ASELECT * FROM cd WHERE category IN (CLASEIC,'ROCK);

BSELECT * FROM cd WHERE category BETWEEN CLASSIC’ AND ROCK;

CSELECT * FROM cd WHERE category=CLASSIC’ AND category=ROCK;

DSELECT * FROM cd WHERE category=CLASSIC’ OR category=ROCK;

答案:AD

72、在Oracle中,通过命令( )可以释放锁。(选择两项)

AINSERT

BDELETE

CROLLBACK

DCOMMIT

答案:CD

73、执行特定任务的子程序是( )

A、函数

B、过程。

C、程序包

D、游标。

答案:AB

 

由“Oracle笔试题库”收集整理 

1 0
原创粉丝点击