OCP-052考试题库汇总(46)-CUUG内部解答版

本文深入解析了Oracle数据库中全局临时表的三种行为:on commit delete rows、on commit preserve rows及session结束时的行为。通过对比不同行为,阐述了临时表数据的可见性和生命周期,纠正了关于数据可见性的常见误解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Examine this command:

SQL> CREATE GLOBAL TEMPORARY TABLE report_work_area

(startdate DATE,

enddate DATE,

class CHAR(20)) ON COMMIT PRESERVE ROWS;

Which three statements are true about rows inserted into REPORT_WORK_AREA?

A)Rows will be lost if a ROLLBACK is done.

B)Rows will be lost upon session failure.

C)Rows are visible to all sessions logged in by the same user until the session that inserted the rows terminates.

D)Rows are visible to all sessions logged in by all users granted the DBA role until the session that inserted the rows terminates.

E)Rows will be lost upon session normal termination.

F)Rows are visible globally to all sessions logged in by any user until the session that inserted the rows terminates.

Answer: ABE

赵:

on commit delete rows,事务提交时自动删除临时表中的记录。

on commit preserve rows,当用户退出 session 时(会话结束后)自动清除临时表的数据。

前者在事务提交后数据就已经清除了.后者在会话中止时或者正 s 常退出时数据都会被清除掉.

CDF 错,Temporary Table 的数据存放在 PGA 或临时表空间下,它被每个 session 单独使用,即隔离session 间的数据,每个 session 只能看到自己的数据。

转载于:https://my.oschina.net/u/3902946/blog/3099230

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值