Oracle数据库考试试题库.docx

上传人:b****6 文档编号:3407550 上传时间:2022-11-22 格式:DOCX 页数:31 大小:746.82KB
下载 相关 举报
Oracle数据库考试试题库.docx_第1页
第1页 / 共31页
Oracle数据库考试试题库.docx_第2页
第2页 / 共31页
Oracle数据库考试试题库.docx_第3页
第3页 / 共31页
Oracle数据库考试试题库.docx_第4页
第4页 / 共31页
Oracle数据库考试试题库.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

Oracle数据库考试试题库.docx

《Oracle数据库考试试题库.docx》由会员分享,可在线阅读,更多相关《Oracle数据库考试试题库.docx(31页珍藏版)》请在冰豆网上搜索。

Oracle数据库考试试题库.docx

Oracle数据库考试试题库

 

Oracle数据库考试试题库

1.启动数据库的命令(A)。

A.startupB.startupopenC.shutdownD.startupdatabase

2.(C)是启动数据库时用来记录数据文件、联机日志文件的相关信息的二进制文件。

A.数据文件B.参数文件C.控制文件D.归档文件

3.你需要在表SALES里查找一些产品明细,其中PROD_ID列包括字符'_D123'。

(B)WHERE子句条件能得到这些相符产品。

A.WHEREprod_idLIKE'%_D123%'ESCAPE'_'

B.WHEREprod_idLIKE'%\_D123%'ESCAPE'\'

C.WHEREprod_idLIKE'%_D123%'ESCAPE'%_'

D.WHEREprod_idLIKE'%\_D123%'ESCAPE'\_'

4.关于单行函数,哪一个描述是正确的(D)

A.他们只能接受一个参数。

B.他们只能嵌套两层。

C.参数只能是字段值或常量。

D.他们始终为查找表中的每个行返回一个值。

5.下面哪个SQL语句显示1890.55as$1,890.55(ADE)选三项

A.SELECTTO_CHAR(1890.55,'$0G000D00')

FROMDUAL;

B.SELECTTO_CHAR(1890.55,'$9,999V99')

FROMDUAL;

C.SELECTTO_CHAR(1890.55,'$99,999D99')

FROMDUAL;

D.SELECTTO_CHAR(1890.55,'$99G999D00')

FROMDUAL;

E.SELECTTO_CHAR(1890.55,'$99G999D99')

FROMDUAL;

6.下列关于ORACLE的to_date函数和to_char函数,描述正确的是(BC)选两项

A.to_char函数是将字符串数据转换为日期数据

B.to_date函数是将字符串数据转换为日期数据

C.to_char函数是将日期数据转换为字符数据

D.to_date函数是将日期数据转换为字符数据

7.在表emp里,计算员工的年薪SAL*12并生成别名AnnualSalary。

(B)

A.SELECTename,sal*12,AnnualSalaryFROMemp;

B.SELECTename,sal*12"AnnualSalary"FROMemp;

C.SELECTename,sal*12ASAnnualSalaryFROMemp;

D.SELECTename,sql*12ASINICTAP("AnnualSalary")FROMemp;

8.查看promotion(促销表),每个促销周期为7天。

你的经理要你生成一个报表,提供每周的促销成本。

(D)

A.SELECTpromo_name,promo_cost/promo_end_date-promo_begin_date/7FROMpromotions;

B.SELECTpromo_name,(promo_cost/promo_end_date-promo_begin_date)/7FROMpromotions;

C.SELECTpromo_name,promo_cost/(promo_end_date-promo_begin_date/7)FROMpromotions;

D.SELECTpromo_name,promo_cost/((promo_end_date-promo_begin_date)/7)FROMpromotions;

9.你需要为每个客户的信息额度增加$1000。

在输出时,客户的lastname列头应为Name,cust_credit_limit的列头为NewCreditLimit。

(C)

A.SELECTcust_last_nameName,cust_credit_limit+1000

"NewCreditLimit"

FROMcustomers;

B.SELECTcust_last_nameASName,cust_credit_limit+1000

ASNewCreditLimit

FROMcustomers;

C.SELECTcust_last_nameAS"Name",cust_credit_limit+1000

AS"NewCreditLimit"

FROMcustomers;

D.SELECTINITCAP(cust_last_name)"Name",cust_credit_limit+1000INITCAP("NEWCREDITLIMIT")FROMcustomers;

10.查看表PRODUCTS。

你需要生成一个报表显示如下格式:

CATEGORIES

5MPDigitalPhotoCamera'scategoryisPhoto

YBox'scategoryisElectronics

EnvoyAmbassador'scategoryisHardware

哪两个查询可以获得需要的输出(CD)

A.SELECTprod_name||q'''scategoryis'||prod_categoryCATEGORIESFROMproducts;

B.SELECTprod_name||q'['s]'categoryis'||prod_categoryCATEGORIESFROMproducts;

C.SELECTprod_name||q'\'s\'||'categoryis'||prod_categoryCATEGORIESFROMproducts;

D.SELECTprod_name||q'<'s>'||'categoryis'||prod_categoryCATEGORIESFROMproducts;

11.下面查询:

SQL>SELECTcust_nameAS"NAME",cust_credit_limit/2AS

MIDPOINT,MIDPOINT+100AS"MAXLOWERLIMIT"

FROMcustomers;

上面查询在执行时发生错误,这个错误的原因是什么(A)

A.一个别名不能使用在表达式中。

B.一个别名NAME没有一个隔开的双引号。

C.MIDPOINT+100是错误的因为CUST_CREDIT_LIMIT包含了NULL值。

D.为CUST_CREDIT_LIMIT/2表达式取一个别名MIDPOINT应用双引号隔开。

12.你想去生成一个报表显示每个员工从入职以来的总的薪金。

你执行下列查询:

SQL>SELECTename'joinedon'hiredate

',thetotalcompensationpaidis'

TO_CHAR(ROUND(ROUND(SYSDATE-hiredate)/365)*sal+comm)

"COMPENSATIONUNTILDATE"

FROMemployees;

输出结果:

哪个说法是正确的(C)

A.此查询执行错误是因为别名无效的。

B.此查询能正确执行并得到正确的结果。

C.此查询能正确执行但不能得到正确结果。

D.此查询执行错误是因为ROUND函数是无效的。

13.当你执行下列查询:

SQL>selecte.empno,e.ename,d.loc

2fromempe,deptd

3wheree.deptno=d.deptno

4andsubstr(e.ename,1,1)=‘S’;

下列哪个语句是Oracle数据库中可用的ANSI兼容等价语句(A)

A.selectempno,ename,locfromempjoindeptonemp.deptno=dept.deptnowhere

substr(emp.ename,1,1)=‘S’;

B.selectempno,ename,locfromemp,deptonemp.deptno=dept.deptnowhere

substr(emp.ename,1,1)=‘S’;

C.selectempno,ename,locfromempjoindeptwhereemp.deptno=dept.deptnoand

substr(emp.ename,1,1)=‘S’;

D.selectempno,ename,locfromempleftjoindeptonemp.deptno=dept.deptnoand

substr(emp.ename,1,1)=‘S’;

14.你要操纵Oracle数据,下列哪个不是SQL命令(B)

A.select*fromdual;

B.setdefine

C.updateempsetename=6543whereename=‘SMITHERS’;

D.createtableemployees(empidvarchar2(10)primarykey);

SQL*Plus中发出的下列语句:

SQL>selectceil(-97.342),

2floor(-97.342),

3round(-97.342),

4trunc(-97.342)

5fromdual;

15.下列哪个函数不返回结果-97(B)

A.ceil()B.floor()C.round()D.trunc()

16.查看下面PROMOTIONS表结构:

nameNullType

PROMO_IDNOTNULLNUMBER(6)

PROMO_NAMENOTNULLVARCHAR2(30)

PROMO_CATEGORYNOTNULLVARCHAR2(30)

PROMO_COSTNOTNULLNUMBER(10,2

管理层想看到每种促销种类的唯一促销成本。

下面哪个查询得到需要的结果(D)

A.SELECTDISTINCTpromo_cost,promo_categoryFROMpromotions;

B.SELECTpromo_category,DISTINCTpromo_costFROMpromotions;

C.SELECTDISTINCTpromo_cost,DISTINCTpromo_categoryFROMpromotions;

D.SELECTDISTINCTpromo_category,promo_costFROMpromotionsORDERBY1;

17.在Oracle数据库10g/11g里哪三个关于数据类型描述正确的是(ADE)

A.每个表里只能有一个LONG字段。

B.一个TIMESTAMP数据类型字段只能存储带秒的时间值。

C.BLOB数据类型字段用于在操作系统文件里存储二进制数据。

D.可以为一个VARCHAR2数据类型列中指定的最小列宽为1

E.一个CHAR数据类型列中的值是空格填充到最大定义的列宽

18.查看下面表EMP_DETAILS结构:

nameNULLTYPE

EMP_IDNOTNULLNUMBER

EMP_NAMENOTNULLVARCHAR2(40)

EMP_IMAGELONG

19.哪两个SQL语句在表EMP_DETAILS执行是正确的(BC)

A.一个EMP_IMAGE字段能包含在GROUYBY子句。

B.一个EMP_IMAGE字段不能包含在ORDERBY子句。

C.你不能在表中增加新的LONG字段。

D.您可以更改表,包括对EMP_IMAGE列的NOTNULL约束。

20.检查下列表结构:

nameNullType

TRANS_IDNOTNULLNUMBER(6)

CUST_NAMENOTNULLVARCHAR2(20)

CUST_STATUSNOTNULLCHAR

TRANS_DATENOTNULLDATE

TRANS_VALIDITYVARCHAR2

CUST_CREDIT_LIMITNUMBER

在上面的表结构中创建和存储中哪些说法是正确的?

(BC)选二项

A.CUST_STATUS列将给出错误。

B.TRANS_VALIDITY列将给出错误。

C.CUST_STATUS列能存储一个字符。

D.CUST_CREDIT_LIMIT列不能存储有小数位的值。

E.TRANS_VALIDITY列最大长度为一个字符。

F.TRANS_DATE列能存储天、月、世纪、年、小时、分、秒和秒的小数部分。

21.查看下面表TRANSACTIONS结构:

nameNullType

TRANS_IDNOTNULLNUMBER(6)

CUST_NAMENOTNULLVARCHAR2(20)

CUST_STATUSNOTNULLVARCHAR2

TRANS_DATENOTNULLDATE

TRANS_VALIDITYINTERVALDAYTOSECOND

CUST_CREDIT_VALUENUMBER(10)

22.在上面的表结构中创建和存储中哪些说法是正确的(BC)选二项

A.TRANS_DATE列只允许存储格式为dd-mon-yyyy的日期。

B.CUST_CREDIT_VALUE列允许存储正负整数。

C.TRANS_VALIDITY列允许存储日、小时、分和秒间隔时间。

D.CUST_STATUS列允许存储最大为4000字符。

23.下列哪个CREATETABLE语法是有效的(A)

A.CREATETABLEemp9$#(emp_noNUMBER(4));

B.CREATETABLE9emp$#(emp_noNUMBER(4));

C.CREATETABLEemp*123(emp_noNUMBER(4));

D.CREATETABLEemp9$#(emp_noNUMBER(4),dateDATE);

24.哪两个关于约束正确的说法?

(BD)选二项

A.外键不能包含NULL值。

B.一个有UNIQUE约束的字段能包含NULL值。

C.约束是只对一个表上的INSERT操作执行。

D.约束能被禁用即使约束字段包含数据。

E.所有的约束可以在列级定义,也可以在表级别定义。

25.评估下列CREATETABLE命令:

CREATETABLEorders

(ord_noNUMBER

(2)CONSTRAINTord_pkPRIMARYKEY,

ord_dateDATE,

cust_idNUMBER(4));

CREATETABLEord_items

(ord_noNUMBER

(2),

item_noNUMBER(3),

qtyNUMBER(3)CHECK(qtyBETWEEN100AND200),

expiry_datedateCHECK(expiry_date>SYSDATE),

CONSTRAINTit_pkPRIMARYKEY(ord_no,item_no),

CONSTRAINTord_fkFOREIGNKEY(ord_no)REFERENCESorders(ord_no));

当执行上述命令时失败,原因是什么(A)

A.SYSDATE不能用于CHECK约束。

B.BETWEEN子句不能用于CHECK约束。

C.CHECK约束不能放在具有DATE数据类型的列。

D.ORD_NO和ITEM_NO不能用于复合主键因为ORD_NO也是外键。

26.评估下列SQL命名:

SQL>CREATESEQUENCEord_seq

INCREMENTBY10

STARTWITH120

MAXVALUE9999

NOCYCLE;

SQL>CREATETABLEord_items

(ord_noNUMBER(4)DEFAULTord_seq.NEXTVALNOTNULL,

item_noNUMBER(3),

qtyNUMBER(3)CHECK(qtyBETWEEN100AND200),

expiry_datedateCHECK(expiry_date>SYSDATE),

CONSTRAINTit_pkPRIMARYKEY(ord_no,item_no),

CONSTRAINTord_fkFOREIGNKEY(ord_no)REFERENCESorders(ord_no));

上述命令建立表失败,哪两个SQL语法失败(AC)

A.你在CHECK约束的条件下不能使用SYSDATE。

B.你在CHECK约束条件下不能使用BETWEEN。

C.你不能使用NEXTVAL序列值作为列的DEFAULT值。

D.ORD_NO和ITEM_NO不能用于复合主键因为ORD_NO也是外键。

27.哪个CREATETABLE语法是有效的(D)

A.CREATETABLEord_details

(ord_noNUMBER

(2)PRIMARYKEY,

item_noNUMBER(3)PRIMARYKEY,

ord_dateDATENOTNULL);

B.CREATETABLEord_details

(ord_noNUMBER

(2)UNIQUE,NOTNULL,

item_noNUMBER(3),

ord_dateDATEDEFAULTSYSDATENOTNULL);

C.CREATETABLEord_details

(ord_noNUMBER

(2),

item_noNUMBER(3),

ord_dateDATEDEFAULTNOTNULL,

CONSTRAINTord_uqUNIQUE(ord_no),

CONSTRAINTord_pkPRIMARYKEY(ord_no));

D.CREATETABLEord_details

(ord_noNUMBER

(2),

item_noNUMBER(3),

ord_dateDATEDEFAULTSYSDATENOTNULL,

CONSTRAINTord_pkPRIMARYKEY(ord_no,item_no));

28.你用下列命令删除PRODUCTS表:

SQL>DROPTABLEproducts;

下列哪三个说法正确的(ABD)

A.表的结构及所有数据都删除。

B.在会话中未提交的事务被提交。

C.表对应的所有的索引将保留但他们变为无效。

D.所有的视图和同义词将保留但他们变为无效。

E.所有的数据被删除但是表结构将保留。

29.检查下列CREATESEQUENCE语法:

CREATESEQUENCEseq1

STARTWITH100

INCREMENTBY10

MAXVALUE200

CYCLE

NOCACHE;

当SEQ1序列生成到最大值为200。

你执行下列SQL语法:

SELECTseq1.nextvalFROMdual;

此SELECT语法显示什么(A)

A.1

B.10

C.100

D.出现错误

30.下面哪两个关于索引说法正确(AD)

A.他们可以建立在表和聚簇上。

B.他们可以建立在表上和简单视图上。

C.你可以使用相同的列创建唯一索引。

D.如果你指定相同列的不同组合可以建立多个索引。

31.检查下列SQL语法:

用PRODUCTS表,你需要生成名字,当前价格列表,及打折扣25%后小于$10的所有的这些产品。

SQL>SELECTprod_name,prod_list_price,

prod_list_price-(prod_list_price*.25)"DISCOUNTED_PRICE"

FROMproducts

WHEREdiscounted_price<10;

此查询执行时发生一个错误。

此错误的原因是什么(C)

A.括号应包含整个表达式。

B.双引号应该从列别名被删除。

C.在WHERE子句的表达式应被替换。

D.列别名应为大写且在WHERE子句中用双引号括起来。

32.查看表PROMOTIONS表,PROMO_BEGIN_DATE是存储默认的日期,格式为dd-mon-rr.

你需要查看一个报表包括表promos所有的name,cost,startdate。

你能用哪个语法显示下列内容(D)

A.SELECTpromo_name,promo_cost,promo_begin_date

FROMpromotions

WHEREpromo_category='post'ANDpromo_begin_date<'01-01-00';

B.SELECTpromo_name,promo_cost,promo_begin_date

FROMpromotions

WHEREpromo_costLIKE'post%'ANDpromo_begin_date<'01-01-2000';

C.SELECTpromo_name,promo_cost,promo_begin_date

FROMpromotions

WHEREpromo_categoryLIKE'P%'ANDpromo_begin_date<'1-JANUARY-00';

D.SELECTpromo_name,promo_cost,promo_begin_date

FROMpromotions

WHEREpromo_categoryLIKE'%post%'ANDpromo_begin_date<'1-JAN-00';

33.查看PART_CODE字段包括下列内容:

PART_CODE

---------------------

A%_WQ123

A%BWQ123

AB_WQ123

检查下列查询:

SQL>SELECTpart_codeFROMsparesWHEREpart_codeLIKE'%\%_WQ12%'ESCAPE'\';

哪个语句的输入是正确的(D)

A.此语句错误.

B.此语句显示所有的值.

C.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1