ORACLE数据库习题Word文件下载.docx

上传人:b****5 文档编号:18762832 上传时间:2023-01-01 格式:DOCX 页数:25 大小:24.70KB
下载 相关 举报
ORACLE数据库习题Word文件下载.docx_第1页
第1页 / 共25页
ORACLE数据库习题Word文件下载.docx_第2页
第2页 / 共25页
ORACLE数据库习题Word文件下载.docx_第3页
第3页 / 共25页
ORACLE数据库习题Word文件下载.docx_第4页
第4页 / 共25页
ORACLE数据库习题Word文件下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

ORACLE数据库习题Word文件下载.docx

《ORACLE数据库习题Word文件下载.docx》由会员分享,可在线阅读,更多相关《ORACLE数据库习题Word文件下载.docx(25页珍藏版)》请在冰豆网上搜索。

ORACLE数据库习题Word文件下载.docx

FIRST_NAMEVARCHAR2(25)

LAST_NAMEVARCHAR2(25)

HIRE_DATEDATE

考虑下面的语句。

1.CREATEtablenew_emp(employee_idNUMBER,nameVARCHAR2(30));

2.INSERTINTOnew_empSELECTemployee_id,last_namefromemployees;

3.Savepoints2;

4.DELETEfromnew_emp;

5.ROLLBACKtos2;

6.DELETEfromnew_empwhereemployee_id=180;

7.UPDATEnew_empsetname=’James’;

8.ROLLBACKtos2;

9.UPDATEnew_empsetname=’James’WHEREemployee_id=180;

10.ROLLBACK;

完成本次事务处理以后,以下说确的有()

A.表中没有行。

B.有一个为James的员工。

C.不能多次回滚到相同的保存点。

D.由于已经删除了员工ID180,因此最后一次更新未更新任何行。

10.以下运算结果不为空值的是()

A.12+NULL

B.60*NULL

C.NULL‖’NULL’

D.12/(60+NULL)

11.若当前日期为’25-5月-06’,以下()表达式能计算出5个月后那一天所在月份的最后一天的日期。

A.NEXT_DAY(ADD_MONTHS(’28-5月-06’,5))

B.NEXT_DAY(MONTHS_BETWEEN(’28-5月-06’,5))

C.LAST_DAY(MONTHS_BETWEEN(’28-5月-06’,5))

D.LAST_DAY(ADD_MONTHS(’28-5月-06’,5))

12.()子句用于列出唯一值。

A.uniqueB.distinctC.orderbyD.groupby

13.哪一个是子查询执行的顺序()

A.最里面的查询到最外面的查询

B.最外面的查询到最里面的查询

C.简单查询到复杂查询

D.复杂查询到简单查询

14.下面哪一个语句可以使用子查询()

A.SELECT语句B.UPDATE语句

C.DELETE语句D.以上都是

15.如果表DEPT包含3条记录,现在用如下命令对其进行修改,

ALTERTABLEDEPTADD(COMPNUMBER(4)NOTNULL);

请问下面哪一个说法是正确的()

A.该语句在表的最前面插入一个非空列

B.该语句在表的最后插入一个非空列

C.该语句执行完成后,应当立即执行COMMIT语句,以确保更改生效

D.该语句将产生错误

16.下列哪个是组合主键的特征()

A.每列有唯一的值,但不是NULL值

B.组合有唯一的值,并且其中每列没有NULL值

C.组合的第一列和最后一列有唯一值

D.组合的第一列和最后一列有唯一值,但没有NULL值

17.当删除父表中的数据时,在CREATETABLE语句的外键定义中指定的()选项删除子表中的数据。

A.ONTRUNCATECASCADE

B.ONDELETECASCADE

C.ONUPDATECASCADE

D.A和C都是

18.视图可以用于()

A.限制对表中指定列的访问

B.限制对表中行的子集的访问

C.A和B都是

D.A和B都不是

19.语句SELECT*FROMdeptWHERENOTEXISTS(SELECT*FROMempWHEREdeptno=dept.deptno)执行后的结果为()

A.只显示存在于EMP表中的部门全部信息。

B.只显示不存在于EMP表中的部门全部信息

C.未返回任何数据

D.显示DEPT表中的全部信息

20.已创建序列S1,若当前值为2,先执行3次S1.CURRVAL,再执行3次S1.NEXTVAL,最后S1的值是()

A.3B.4C.5D.6

21.数据库中有两个用户scott和myuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是()

A.select*fromscott.wzwherewunitisnullandrownum<

5;

B.select*frommyuser.wzwherewunit=nullandrownum<

C.select*frommyuser.wzwherewunitisnullandrownum<

6;

D.select*formscott.wzwherewunitisnullandrownum<

22.若用户要连接数据库,则该用户必须拥有的权限是()

A.createtableB.createindex

C.createsessionD.connect

23.授予删除任何表的系统权限(DROPANYTABLE)给user1,并使其能继续授该权限给其他用户,以下正确的SQL语句是()

A.Grantdropanytabletouser1;

B.Grantdropanytabletouser1withadminoption;

C.Grantdroptabletouser1;

D.Grantdropanytabletouser1withcheckpotion;

24.当给一个有主键的表中插入重复行时,将引发下列哪个异常?

A.NO_DATA_FOUNDB.TOO_MANY_ROWS

C.DUP_VAL_ON_INDEXD.ZERO_DIVIDE

25.下面的查询中哪一个会产生笛卡尔集?

A.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd

WHEREe.deptno=d.deptno;

B.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd;

C.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd

WHEREe.empno=101ande.deptno=d.deptno;

D.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd

WHEREe.deptno=d.deptnoandd.deptno=60;

26.当每个非主键列完全依赖于(整个)主键列时,关系设计属于下列哪一种形式()

A.第一式B.第二式

C.第三式D.第四式

27.一般在()中有机会使用:

NEW和:

OLD

A.游标B.存储过程

C.函数D.触发器

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

CURSORemp_cursor(dnumNUMBER)IS

SELECTsal,commFROMempWHEREdeptno=dnum;

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

A.OPENemp_cursor;

B.OPENemp_cursorFOR20;

C.OPENemp_cursorUSING20;

D.FORemp_recINemp_cursor(20)LOOP…ENDLOOP;

29.下面哪些是函数中的有效参数模式?

(  )

A.INB.INOUTC.OUTD.OUTIN

30.()是一个单一的逻辑工作单元。

A.记录B.数据库

C.事务D.字段

1.数据定义语言是用于()的方法。

〔选择一项〕

A.确保数据的准确性B、定义和修改数据结构

C、查看数据D、删除和更新数据

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

A.CREATEPRIVATESYNONYM

B.CREATEPUBLICSYNONYM

C.CREATESYNONYM

D.CREATEANYSYNONYM

3.通常情况下,()值可以唯一地标识数据库中的一行。

〔选择二项〕

A.ROWNUM

B.PRIMARYKEY

C.UNIQUE

D.ROWID

4.Oracle中,表名应该严格遵循下列哪些命名规则(  )(选择二项)

A.表名的最大长度为20个字符

B.表名首字符可以为字母或下划线

C.同一用户模式下的不同表不能具有相同的名称

D.不能使用Oracle保留字来为表命名

5.在设计数据库时,要充分考虑数据的完整性或准确性。

下面关于primarykey和unique的描述错误的是(  )〔选择二项)

A.primarykey用来在表中设置主键,主键列的值是可以重复的,用来唯一标识表中的每一条记录

B.primarykey列和unique列都不可以有null值

C.设为unique的列的值是不能重复的,用来唯一区别unique列的值

D.primarykey列不可以有null值,而unique列是可以有null的

6.假定有一表用户表users,其中一字段ID_card。

为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束(  )(选择一项)

A.primarykeyB、checkC、defaultD、unique

7.下面哪个命令不属于数据操纵语言(DML)()(选择二项)

A.ALTER…

B.INSERT…

C、UPDATE…

D、DROP…

8.(  )操作符只返回由第一个查询选定但是没有被第二个查询选定的行。

E.UNION

F.UNIONALL

G.INTERSECT

H.MINUS

完成本次事务处理以后,以下说确的有()(不定项选择)

E.表中没有行。

F.有一个为James的员工。

G.不能多次回滚到相同的保存点。

H.由于已经删除了员工ID180,因此最后一次更新未更新任何行。

10.删除emp表中所有数据,且可以rollback,以下语句哪个命令可以实现( )(选择一项)

A.truncatetableemp

B.droptableemp

C.delete*fromemp

D.deletefromemp

11.你发出命令:

DROPTABLEemp;

此时你还没有明确发出COMMIT命令。

你能用什么命令撤消上面的drop语句所做的操作?

( )〔选择一项〕

A.关闭数据库

B.什么命令都不可以,因为DDL语句不能被回滚

C.发出一个ROLLBACK命令

D.终断正在活动的会话

12.表ORDERS的结构定义如下:

ORDER_IDNUMBER(4)NOTNULL;

CUSTOMER_IDNUMBER(12)NOTNULL;

ORDER_TOTALNUMBER(10.2);

下列哪两个语句,能检索出预定总量在100.00与2000.00之间的记录?

( )〔不定项选择〕

A.SELECTcustomer_id,order_id,order_totalFROMordersHAVINGorder_totalBETWEEN100AND2000;

B.SELECTcustomer_id,order_id,order_totalFROMordersWHEREorder_totalBETWEEN100AND2000;

C.SELECTcustomer_id,order_id,order_totalFROMordersWHEREorder_total>

=100AND<

=2000;

D.SELECTcustomer_id,order_id,order_totalFROMordersHAVINGONorder_total(100and2000)INCLUSIVE;

E.SELECTcustomer_id,order_id,order_totalFROMordersWHEREorder_total>

=100ANDorder_total<

13.以下哪些是有效的Oracle约束类型?

()(选择四项)

A.UNIQUEB.NONUNIQUE

C.CHECKD.CASCADE

E.PRIMARYKEYF.CONSTANTG

G.NOTNULL

14.更改oracle用户HR,使其变为不可用(锁定)状态(  )〔选择一项〕

A.UPDATEUSERHRACCOUNTDISABLE;

B.UPDATEUSERHRACCOUNTLOCK;

C.ALTERUSERHRACCOUNTLOCK;

D.ALTERUSERHRACCOUNTDISABLE;

15.INSERTINTOTESTVALUES(‘&

ID’,’&

NAME’);

语句在执行时将()〔选择一项〕

A.编译错:

提示变量未定义

B.运行错:

提示不能识别符号

C.将值&

ID和&

NAME插入到表中

D.提示用户输入输入ID和NAME的值,再将输入值插入表中

16.下面关于删除视图的说法哪一个是正确的(  )。

(选择一项)

A.删除视图后应立即用COMMIT语句使更改生效

B.删除视图后,和视图关联的表中的数据不再存在

C.视图被删除后视图中的数据也将被删除

D.用dorpVIEW删除视图

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

〔选择一项)

A.汇总

B.分析

C.分组

D.单行

18.集合操作符Intersect的作用是()〔选择一项〕

A.将两个记录集联接起来

B.选择第一个查询有,而第二个没有的记录

C.选择二个查询的交集

D.选择第二个查询有,而第一个没有的记录

19.EMP1表包含下面这些字段。

ENAMEVARCHAR2(35)

SALARYNUMBER(8,2)

管理部门想要一份已在公司工作了5年以上的员工。

以下哪个SQL语句可以显示需要的结果。

()(选择一项)

A.SELECTENAMEFROMEMP1WHERESYSDATE-HIRE_DATE>

5;

B.SELECTENAMEFROMEMP1WHEREHIRE_DATE-SYSDATE>

C.SELECTENAMEFROMEMP1WHERE(SYSDATE-HIRE_DATE)/365>

D.SELECTENAMEFROMEMP1WHERE(SYSDATE-HIRE_DATE)*365>

20.在Oracle中,使用下列的语句:

CREATEPUBLICSYNONYMpartsFORScott.inventory;

 完成的任务是(  )。

A.需要给出schema被除去的对象名

B.指定了新的对象权限

C.指定了新的系统权限

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

21.在Oracle中,有一个名为seq_id的序列对象,假定此时查看seq_id序列当前值显示为100,那么执行下面的sql

insertintotest(id,name)values(seq_id.NEXTVAL,'

tom'

);

很不幸,这个insert没有执行成功,随后马上执行rollback,问:

此时查看seq_id序列当前值显示为()〔选择一项〕

A.99B、100

C、101D、不能确定

22.PL/SQL块中不能直接使用的SQL命令是()〔选一项〕

A.SELECT

B.INSERT

C.UPDATE

D.DROP

23.在PL/SQL块中,以零作除数时会引发下列( )异常。

A.VALUE_ERROR

B.ZERO_DIVIDE

C.VALUE_DIVIDE

D.ZERO_ERROR

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

A.selectseq.ROWNUMfromdual;

B.selectseq.NEXTVALfromdual;

C.selectseq.CURRVALfromdual;

D.selectseq.CURIVALfromdual;

25.当SelectInto语句的返回没有数据时,将引发下列哪个异常?

()[选择一项]

A.No_Data_Found

B.To_Many_Row

C.Too_Many_Rows

D.Invalid_Number

26.创建序列时,若未指定Cycle选项,则当前值大于MaxValue时将()〔选择一项〕

A.从MinValue重新开始循环

B.重复使用MaxValue值

C.执行出错

D.使用随机值

27.PL/SQL块中哪几部分是可选的()〔选择二项〕

A.Declare

B.Begin

C.Exception

D.以上均是

那么正确打开此游标的语句是(  )(选择两项)

E.OPENemp_cursor(20);

F.OPENemp_cursorFOR20;

G.OPENemp_cursorUSING20;

H.FORemp_recINemp_cursor(20)LOOP…ENDLOOP;

29.在Insert触发器中可使用的引用有()〔选一项〕

A.new

B.Old

C.:

Update

D.:

New和:

Old

30.下面哪些是过程中的有效参数模式?

(  )〔不定项选择〕

1.检索部门编号、部门名称、部门所在地及其每个部门的员工总数。

selectd.deptno,d.dname,d.loc,count(*)fromempe,deptdwheree.deptno=d.deptnogroupbyd.deptno,d.dname,d.loc;

2.检索员工和所属经理的。

selecte.ename雇员,m.ename经理fromempe,empmwheree.mgr=m.empno;

3.检索工资等级处于第四级别的员工的。

selecte.enamefromempeinnerjoinsalgradeson(e.salbetweens.losalands.hisal)wheres.grade=4;

4.检索工资等级高于smith的员工信息。

select*fromempejoinsalgradeson(e.salbetweens.losalands.hisal)wheres.grade>

(selectdistincts.gradefromempejoinsalgradeson((selectsalfromempwhereename='

SMITH'

)betweens.losalands.hisal));

5.检索30部门中1980年1月份之前入职的员工信息。

显示:

员工号、员工名、部门号,部门名、入职日期。

selectempno

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

当前位置:首页 > 成人教育 > 自考

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

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