ITPub博客

首页 > Linux操作系统 > Linux操作系统 > OCP(11g)-----> TRANSACTION_BACKOUT Parameters

OCP(11g)-----> TRANSACTION_BACKOUT Parameters

原创 Linux操作系统 作者:maohaiqing0304 时间:2013-04-29 23:25:46 0 删除 编辑
 

TRANSACTION_BACKOUT Parameters

The parameters of the TRANSACTION_BACKOUT procedure are:

  • Number of transactions to be backed out

  • List of transactions to be backed out, identified either by name or by XID

  • Time hint, if you identify transactions by name

    Specify a time that is earlier than any transaction started.

  • Backout option from Table 12-2

For the syntax of the TRANSACTION_BACKOUT procedure and detailed parameter descriptions, see Oracle Database PL/SQL Packages and Types Reference.

Table 12-2 Flashback TRANSACTION_BACKOUT Options

Option Description

CASCADE

Backs out specified transactions and all dependent transactions in a post-order fashion (that is, children are backed out before parents are backed out).

Without CASCADE, if any dependent transaction is not specified, an error occurs.

NOCASCADE

Default. Backs out specified transactions, which are expected to have no dependent transactions. First dependent transactions causes an error and appears in *_FLASHBACK_TRANSACTION_REPORT.

NOCASCADE_FORCE

Backs out specified transactions, ignoring dependent transactions. Server runs undo SQL statements for specified transactions in reverse order of commit times.

If no constraints break and you are satisfied with the result, you can commit the changes; otherwise, you can roll them back.

NONCONFLICT_ONLY

Backs out changes to nonconflicting rows of the specified transactions. Database remains consistent, but transaction atomicity is lost.



TRANSACTION_BACKOUT analyzes the transactional dependencies, performs DML operations, and generates reports. TRANSACTION_BACKOUT does not commit the DML operations that it performs as part of transaction backout, but it holds all the required locks on rows and tables in the right form, preventing other dependencies from entering the system. To make the transaction backout permanent, you must explicitly commit the transaction.


相关考题:
QUESTION 43
View the following SQL statements:
Transaction T1 INSERT INTO hr.regions VALUES (5,'Pole');COMMIT;
Transaction T2 UPDATE hr.regions SET region_name='Poles' WHERE region_id = 5; COMMIT;
Transaction T3 UPDATE hr.regions SET region_name='North and South Poles' WHERE region_id = 5;
You want to back out transaction T2. Which option would you use?
A. It is possible, but transaction T3 also backs out.
B. It is possible with the NOCASCADE_FORCE option.
C. It is possible with the NONCONFLICT_ONLY option.
D. It is not possible because it has conflicts with transaction T3.
Answer: B

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28602568/viewspace-759534/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
.

注册时间:2013-03-13

  • 博文量
    117
  • 访问量
    2626246