Difference between revisions of "SQL END TRANSACTION"
Helengeorge (Talk | contribs) |
Helengeorge (Talk | contribs) (→Products) |
||
Line 51: | Line 51: | ||
==Products== | ==Products== | ||
− | Recital | + | Recital Server, Recital |
[[Category:Documentation]] | [[Category:Documentation]] | ||
[[Category:SQL|END TRANSACTION]] | [[Category:SQL|END TRANSACTION]] | ||
[[Category:Commands]] | [[Category:Commands]] |
Revision as of 16:22, 25 November 2009
Purpose
Commit changes made during a transaction and close the transaction
Syntax
BEGIN TRANSACTION [<transaction>]
<statements>
END TRANSACTION [<transaction>]
See Also
BEGIN TRANSACTION, COMMIT, ROLLBACK, SAVE TRANSACTION, SAVEPOINT, SET TRANSACTION, TXNISOLATION(), TXNLEVEL()
Description
The BEGIN TRANSACTION statement is used to flag the beginning of a transaction. The END TRANSACTION statement is used to commit changes made during the transaction and close the transaction. The COMMIT statement and the ROLLBACK statement can also be used to close a transaction. The COMMIT statement will save the changes made and the ROLLBACK statement will discard the changes made.
Transactions can be nested by issuing a second or subsequent BEGIN TRANSACTION before an existing transaction has been closed. The TXNLEVEL() function returns the current transaction nesting level. When a transaction is closed, transactions nested within it are also closed.
Savepoints can be set during a transaction. These identify stages within the transaction which can subsequently be used as ROLLBACK points.
The optional <transaction> is a name for the transaction. This name can be used by the COMMIT and ROLLBACK statements.
Example
// config.db set sql to recital set sql on // end of config.db // Transactions BEGIN TRANSACTION trans1; INSERT INTO customer (TITLE, LAST_NAME, FIRST_NAME, INITIAL, STREET, CITY, STATE, ZIP,LIMIT, START_DATE) VALUES ('Ms', 'Jones', 'Susan', 'B', '177 High Street','Beverly', 'MA', '01915', 2000, date()); INSERT INTO accounts (ORD_VALUE) VALUES (30); BEGIN TRANSACTION trans2; INSERT INTO accounts (ORD_VALUE) VALUES (60); // Rollback the trans1 transaction and any transactions // nested in trans1 ROLLBACK TRANSACTION trans1; END TRANSACTION; // End of program
Products
Recital Server, Recital