【计算机类职业资格】OCA认证-7及答案解析.doc
《【计算机类职业资格】OCA认证-7及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】OCA认证-7及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、OCA 认证-7 及答案解析(总分:100.00,做题时间:90 分钟)一、不定项选择题(总题数:37,分数:100.00)1.分析的语句: create table t1 as select * from regions where 1=2; 结果是什么?(分数:3.00)A.会因为不可能的条件而失败B.不会创建表,因为条件返回 FALSEC.会创建表 T1,但不会插入行,因为条件返回 FALSED.会创建表 T1,会插入 REGIONS 表中的所有行,因为条件返回 NULL 作为行过滤器2.当使用下面的语句创建表时: create table newtab as select * from
2、 tab; 对新表有约束吗(选择一个最佳答案)?(分数:3.00)A.对新表没有约束,因为使用子查询创建表时没有复制约束B.TAB 上的所有约束都会复制到 NEWTABC.会复制主键和唯一约束,但不会复制检查约束和非空约束D.会复制检查约束和非空约束,但不会复制唯一约束和主键约束E.会复制所有约束,外键约束除外3.下列哪些约束要求使用索引?(分数:3.00)A.CHECKB.NOT NULLC.PRIMARY KEYD.UNIQUE4.某个事务由两条语句组成。第一条语句执行成功,但是第二条语句(更新若干行)由于违反约束而失败。此时会出现什么情况?(分数:3.00)A.整个事务都会回滚B.第二条
3、语句的执行结果会被完全回滚,第一条语句的执行结果则会被提交C.第二条语句的执行结果会被完全回滚,第一条语句的执行结果不会被提交D.只有违反约束的更新操作被回滚,其他执行结果都会被提交E.只有违反约束的更新操作被回滚,其他结果不会被提交5.下列哪些关于索引的描述是正确的?(分数:3.00)A.一个索引可以基于某个表的多个列,但是这些列必须具有相同的数据类型B.一个索引可以基于某个表的多个列,但是这些列必须相邻,并且必须按照它们在表中所定义的顺序进行指定C.如果某个索引与某个表位于相同的模式中,那么这个索引与这个表不能同名D.以上叙述都不正确6.下面的哪些选项可以用于 B*树索引,而不能用于位图索
4、引?(分数:3.00)A.压缩B.降序排序C.基于函数的键表达式D.反向键索引E.唯一性F.使用复合键7.临时表中数据的可见性受到限制。如果一个用户以 HR 的身份登录,并将行插入到临时表中,这些行对谁可见?(分数:3.00)A.只有执行插入操作的会话可以访问B.所有以 HR 身份登录的会话C.在执行插入操作的会话终止前,所有会话都可以访问D.在执行插入操作的会话提交事务前,所有会话都可以访问8.临时表写入磁盘的什么位置?(分数:3.00)A.从不写入磁盘B.写入用户的临时表空间C.表所在模式的用户的临时表空间D.写入会话的用户进程的本地磁盘9.下面哪些选项定义了复杂视图而不是简单视图的特征?
5、(分数:3.00)A.通过仅选择表的部分列来限制投影B.用列的别名命名视图的列C.用 WHERE 子句限制行的选择D.执行聚合E.联接两个表10.分析下面三条语句: create view v1 as select department_id,department_name,last_name from departments join employees using(department_id); select department_name,last_name from v1 where department_id=20; select d.department_name,e.last_n
6、ame from departments d, employees e where d.department_id=e.department_id and d.department_id=20; 第一个查询会比第二个查询快,因为:(分数:3.00)A.视图已经完成了联接表的工作B.视图使用 ISO 标准联接语法,它比第二个查询中使用的 Oracle 联接语法快C.视图是预编译的,因此第一个查询需要的动态编译比第二个查询少D.没有理由使第一个查询更快11.研究这个视图创建语句: create view dept30 as select department_id,employee_id,last
7、_name from employees where department_id=30 with check option; 是什么导致如下语句失败? update dept30 set department_id=10 where employee_id=114;(分数:3.00)A.除非另外指定,否则视图会被创建为 WITH READ ONLYB.视图太复杂而不允许 DML 操作C.WITH CHECK OPTION 会拒绝任何修改 DEPARTMENT_ID 的语句D.该语句会成功12.表 SCOTT.DEPT 上有一个简单的视图 SCOTT.DEPT VIEW。这个插入失败了,并出现如
8、下错误: SQLinsert into dept_view values(“SUPPORT“,“OXFORD“); insert into dept_view values(“SUPPORT“,“OXFORD“) * ERROR at line 1: ORA-01400:cannot insert NULL into(“SCOTT“.“DEPT“.“DEPTNO“) 问题可能出在哪里?(分数:3.00)A.INSERT 违反了明细表上的约束B.INSERT 违反了视图上的约束C.视图被创建为 WITH READ ONLYD.视图被创建为 WITH CHECK OPTION13.公有同义词区别于
9、私有同义词的特征是什么?(分数:3.00)A.公有同义词总是对所有用户可见B.公有同义词可以根据名称访问,不需要模式名称限定符C.可以从公有同义词中进行选择,不需要任何权限D.公有同义词可以与表或视图有相同的名称14.分析下面三条语句: create synonym s1 for employees; create public synonym s1 for departments; select*from s1; 下面哪条语句是正确的?(分数:3.00)A.第二个语句会失败,因为对象 S1 已经存在B.第三个语句会显示 EMPLOYEES 的内容C.第三个语句会显示 DEPARTMENTS
10、的内容D.第三个语句会显示表 S1 的内容(如果此当前模式中存在这样一个表的话)15.一个视图和一个同义词的创建语句如下: create view dept_v as select * from dept; create synonym dept_s for dept_v; 然后删除表 DEPT。如果查询同义词 DEPT_S 会发生什么事?(分数:3.00)A.不会有错误,因为该同义词引用了依然存在的视图,但是不会有行返回B.如果先用命令 ALTER VIEW DEPT_V COMPILE FORCE 重新编译视图,就不会有错误C.会有一个错误,因为该同义词将是无效的D.会有一个错误,因为视图
11、将是无效的E.会有一个错误,因为删除表时会隐式删除视图16.一个序列的创建语句如下: create sequence seq1 maxvalue 50; 如果当前值已经是 50,当试图选择 SEQ1.NEXTVAL 时会发生什么情况?(分数:3.00)A.序列会循环,并发出 0B.序列会循环,并发出 1C.序列会重新发出 50D.会出现一个错误17.假设创建了一个如下所示的序列: create sequence seq1 start with 1; 当从中选择了几次后,要将它重新初始化为重新发出已经生成的数值。如何做到这一点?(分数:3.00)A.必须删除并重新创建序列B.无法做到。一旦数值被
12、使用过,就不能从序列中重新发出该数值C.使用命令 ALTER SEQUENCE SEQ1 START WITH 1;将下一个值重置成 1D.使用命令 ALTER SEQUENCE SEQ1 CYCLE;将序列重置为它的起始值18.下面哪些命令可以回滚?(分数:3.00)A.COMMITB.DELETEC.INSERTD.MERGEE.TRUNCATEF.UPDATE19.如果 UPDATE 或者 DELETE 命令包含一个 WHERE 子句,它给出了几行的范围。如果在执行过程中出现错误,会发生什么情况?该命令是多语句事务中的几个命令之一。(分数:3.00)A.命令会跳过导致错误的行继续执行B.
13、命令会在出现错误的地方停止,已经更新或者删除的行会保持更新或删除状态C.会回滚出现错误之前命令已经完成的工作,但事务已经完成的工作会保留D.会回滚整个事务20.考察下面这条 SELECT 语句的结果: (分数:3.00)A.因为没有为所有表的列提供值:C3 和 C4 应为 NULLB.因为子查询返回多行:它需要 WHERE 子句将返回的行数限制为 1C.因为子查询不是标量:它应该使用 MAX 或者 MIN 来生成标量值D.因为 VALUES 关键字和子查询不能同时使用E.它会成功,插入 C3 和 C4 为 NULL 的两行21.要求插入一行然后更新它。采取的步骤应该是什么顺序?(分数:3.00
14、)A.INSERT,UPDATE,COMMITB.INSERT,COMMIT,UPDATE,COMMITC.INSERT,SELECT FOR UPDATE,UPDATE,COMMITD.INSERT,COMMIT,SELECT FOR UPDATE,UPDATE,COMMIT22.下面哪些命令会删除表中的所有行?(分数:3.00)A.没有 WHERE 子句的 DELETE 命令B.DROP TABLE 命令C.TRUNCATE 命令D.UPDATE 命令,将各列设置为 NULL,且不包含 WHERE 子句。23.用户 JOHN 更新了一些行,在他提交这些变更之前,他请求用户 ROOPESH
15、登录并检查这些变更。下面哪条语句是正确的?(分数:3.00)A.ROOPESH 可以看到这些变更但无法更改它们,因为 JOHN 已经锁定了这些行B.ROOPESH 无法看到这些变更C.JOHN 必须提交这些变更,这样 ROOPESH 才能看到它们,如有必要,可以回滚它们D.JOHN 必须提交这些变更,这样 ROOPESH 才能看到它们,但是只有 JOHN 才可以回滚它们24.执行 DML 语句需要多个步骤。请按正确的顺序排列它们。 将变更向量应用于数据库缓冲区缓存 将块从数据文件复制到缓冲区 在数据库缓冲区缓存中搜索相关的块 将变更向量写入日志缓冲区(分数:3.00)A.B.C.D.25.在发
16、出 COMMIT 命令时,将发生什么?(分数:3.00)A.构成事务的所有变更向量写入磁盘B.DBWn 将变更块写入磁盘C.LGWR 将日志缓冲区写入磁盘D.将删除撤消数据,从而使更改不能再回滚26.重做可以保护什么类型的段?(分数:3.00)A.索引段B.表段C.临时段D.撤消段27.下面的哪些命令将终止事务?(分数:3.00)A.CREATEB.GRANTC.SAVEPOINTD.SET AUTOCOMMIT ON28.我们需要锁定来阻止会话同时处理同一个数据。如果一个用户更新一行时没有指定任何锁定,会对其他会话带来什么影响?(分数:3.00)A.其他会话可以读写其他行,但不能读写第一个会
17、话处理的行B.其他会话可以读取第一个会话处理的行,但不能写入它C.其他会话可以读写第一个会话处理的行,但在第一个会话提交或回滚之前,会挂起 COMMITD.其他会话不能写入任何行,因为默认情况下,第一个会话在整个表上施加了一个锁29.下面哪个命令会阻止其他会话读取表中的行?(分数:3.00)A.LOCK TABLE SCOTT.EMP IN EXCLUSIVE MODE;B.LOCK TABLE SCOTT.EMP IN ROW EXCLUSIVE MODE;C.SELECT*FROM SCOTT.EMP FOR UPDATE;D.DELETE FROM SCOTT.EMP;E.Oracle
18、没有提供阻止其他会话读表的锁30.如果多个会话请求同一行上的排他锁,会发生什么情况?(分数:3.00)A.第一个会话获得锁,在其释放锁后,随机选择的下一个会话将获得锁B.第一个会话将获得排他锁,其他会话将获得共享锁C.将按请求顺序,为这些会话授予排他锁D.Oracle 将检测冲突,并回滚在其他情况下将挂起的语句31.如果程序员在更新一个表中的许多行时,没有请求一种锁,会给他们提供什么锁?(分数:2.00)A.根本没有锁定。默认级别的锁定是 NONE,以最大化并行性B.表上的独占锁。更新许多行时,这是最快的方法C.表和每个行上的共享锁。这是最安全的方法,但不是最快的D.每个行上的独占锁,表上的共
19、享锁。这会安全地最大化并行性32.如果两个会话彼此死锁,会发生什么?(分数:2.00)A.Oracle 会回滚一个会话的语句B.Oracle 会回滚两个会话的语句C.两个会话会无限期地挂起D.Oracle 会终止一个会话E.Oracle 会终止两个会话33.执行一条 DML 语句时会出现什么情况?(分数:2.00)A.磁盘上的数据与撤消块都会更新,并且相应的变更会写入重做流B.原有数据被写至撤消段,更新后的数据被写至数据段和重做日志缓冲区C.数据和撤消块在数据库缓冲区缓存中更新,且更新也会转入日志缓冲区D.使用重做事务所需的信息更新重做日志缓冲区,同时使用反转事务所需的信息更新撤消块34.如果
20、怀疑撤消生成有性能问题,该如何减少撤消数据的生成量?(分数:1.00)A.从使用回滚段转为自动撤消管理B.把 UNDO_MANAGEMENT 参数设置为 NONEC.减少撤消段的大小D.什么都做不了,因为所有 DML 语句都必须生成撤消数据35.首先,用户 JOHN 启动了一个查询。其次,用户 ROOPESH 更新了包含在该查询中的一行。第三,JOHN的查询结束了。第四,ROOPESH 提交了他的变更。第五,JOHN 再次运行他的查询。下面哪些语句是正确的?(分数:1.00)A.一致性规则表示,JOHN 的两个查询会返回相同的结果集B.ROOPESH 提交时,撤消数据会转储到磁盘上C.ROOP
21、ESH 提交时,撤消数据会处于不活动的状态D.JOHN 的第一个查询会使用撤消数据E.JOHN 的第二个查询会使用撤消数据F.两个查询不一致36.如果撤消段填满了,会发生什么?(分数:1.00)A.自动创建另一个撤消段B.撤消段的大小会增加C.如果撤消表空间的数据文件设置为自动扩展,撤消表空间就会扩展D.事务会在另一个撤消段中继续37.下面关于撤消的语句中,哪些是正确的?(分数:1.00)A.一个撤消段可以保护许多事务B.一个事务可以使用许多撤消段C.一个数据库可以有许多撤消表空间D.一个实例可以有许多撤消表空间E.一个撤消段可以横跨许多数据文件F.撤消段和回滚段不能共存OCA 认证-7 答案
22、解析(总分:100.00,做题时间:90 分钟)一、不定项选择题(总题数:37,分数:100.00)1.分析的语句: create table t1 as select * from regions where 1=2; 结果是什么?(分数:3.00)A.会因为不可能的条件而失败B.不会创建表,因为条件返回 FALSEC.会创建表 T1,但不会插入行,因为条件返回 FALSE D.会创建表 T1,会插入 REGIONS 表中的所有行,因为条件返回 NULL 作为行过滤器解析:该条件只应用于要插入的行,不适用于表创建。 A、B 和 D 是错误的。A 是错误的,因为该语句在语法上是正确的。B 是错
23、误的,因为条件不适用于 DDL,它只适用于 DML。D 是错误的,因为条件会从选择中排除所有行。2.当使用下面的语句创建表时: create table newtab as select * from tab; 对新表有约束吗(选择一个最佳答案)?(分数:3.00)A.对新表没有约束,因为使用子查询创建表时没有复制约束B.TAB 上的所有约束都会复制到 NEWTABC.会复制主键和唯一约束,但不会复制检查约束和非空约束D.会复制检查约束和非空约束,但不会复制唯一约束和主键约束 E.会复制所有约束,外键约束除外解析:检查和非空约束不依赖任何结构(除了它们应用的表之外),因此可以安全地复制到新表。
24、 A、B、C 和 E 是错误的。A 是错误的,因为非空约束和检查约束会应用于新表。B、C 和 E 是错误的,因为这些约束需要其他对象(索引或者父表),因此没有复制它们。3.下列哪些约束要求使用索引?(分数:3.00)A.CHECKB.NOT NULLC.PRIMARY KEY D.UNIQUE 解析:唯一约束和主键约束需要索引。 A 和 B 是错误的。NOT NULL 和 CHECK 约束并不依赖于索引。4.某个事务由两条语句组成。第一条语句执行成功,但是第二条语句(更新若干行)由于违反约束而失败。此时会出现什么情况?(分数:3.00)A.整个事务都会回滚B.第二条语句的执行结果会被完全回滚,
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 OCA 认证 答案 解析 DOC
