Oracle8i SQL Reference
Release 3 (8.1.7)

Part Number A85397-01

Library

Product

Contents

Index

Go to previous page Go to beginning of chapter Go to next page

SQL Statements:
DROP SEQUENCE to UPDATE, 19 of 27


ROLLBACK

Purpose

Use the ROLLBACK statement to undo work done in the current transaction, or to manually undo the work done by an in-doubt distributed transaction.


Note: Oracle recommends that you explicitly end transactions in application programs using either a COMMIT or ROLLBACK statement. If you do not explicitly commit the transaction and the program terminates abnormally, Oracle rolls back the last uncommitted transaction. 


See Also:

 

Prerequisites

To roll back your current transaction, no privileges are necessary.

To manually roll back an in-doubt distributed transaction that you originally committed, you must have the FORCE TRANSACTION system privilege. To manually roll back an in-doubt distributed transaction originally committed by another user, you must have the FORCE ANY TRANSACTION system privilege.

Syntax


Keywords and Parameters

WORK

The keyword WORK is optional and is provided for ANSI compatibility.

TO SAVEPOINT savepoint

Specify the savepoint to which you want to roll back the current transaction. If you omit this clause, the ROLLBACK statement rolls back the entire transaction.

Using ROLLBACK without the TO SAVEPOINT clause performs the following operations:

Using ROLLBACK with the TO SAVEPOINT clause performs the following operations:

Restriction: You cannot manually roll back an in-doubt transaction to a savepoint.

FORCE

Specify FORCE to manually roll back an in-doubt distributed transaction. The transaction is identified by the 'text' containing its local or global transaction ID. To find the IDs of such transactions, query the data dictionary view DBA_2PC_PENDING.

A ROLLBACK statement with a FORCE clause rolls back only the specified transaction. Such a statement does not affect your current transaction.

Restriction: ROLLBACK statements with the FORCE clause are not supported in PL/SQL.

See Also: Oracle8i Distributed Database Systems for more information on distributed transactions and rolling back in-doubt transactions 

Examples

The following statement rolls back your entire current transaction:

ROLLBACK; 

The following statement rolls back your current transaction to savepoint sp5:

ROLLBACK TO SAVEPOINT sp5; 

The following statement manually rolls back an in-doubt distributed transaction:

ROLLBACK WORK 
    FORCE '25.32.87'; 

Go to previous page Go to beginning of chapter Go to next page
Oracle
Copyright © 1996-2000, Oracle Corporation.

All Rights Reserved.

Library

Product

Contents

Index