Difference between revisions of "SAVE TRANSACTION"
Yvonnemilne (Talk | contribs) |
Yvonnemilne (Talk | contribs) |
||
| Line 1: | Line 1: | ||
| − | |||
| − | |||
| − | |||
==Class== | ==Class== | ||
SQL Applications | SQL Applications | ||
| Line 35: | Line 32: | ||
// SAVE TRANSACTION <savepoint> | // SAVE TRANSACTION <savepoint> | ||
BEGIN TRANSACTION parent_and_child; | BEGIN TRANSACTION parent_and_child; | ||
| − | INSERT INTO customer | + | INSERT INTO customer |
| − | (TITLE, LAST_NAME, FIRST_NAME, INITIAL, STREET, | + | (TITLE, LAST_NAME, FIRST_NAME, INITIAL, STREET, |
| − | CITY, STATE, ZIP,LIMIT, START_DATE) | + | CITY, STATE, ZIP,LIMIT, START_DATE) |
| − | VALUES | + | VALUES |
| − | ('Ms', 'Jones', 'Susan', 'B', '177 High Street', 'Beverly', 'MA', '01915', 2000, date()); | + | ('Ms', 'Jones', 'Susan', 'B', '177 High Street', 'Beverly', 'MA', '01915', 2000, date()); |
| − | SAVE TRANSACTION parent_added; | + | SAVE TRANSACTION parent_added; |
| − | INSERT INTO accounts (ORD_VALUE) VALUES (30); | + | INSERT INTO accounts (ORD_VALUE) VALUES (30); |
| − | ROLLBACK TRANSACTION parent_added; | + | ROLLBACK TRANSACTION parent_added; |
END TRANSACTION; | END TRANSACTION; | ||
// End of program | // End of program | ||
Revision as of 13:09, 26 May 2009
Class
SQL Applications
Purpose
Identifies a stage within a transaction which can subsequently be used as ROLLBACK point.
Syntax
SAVE TRANSACTION <savepoint>
See Also
BEGIN TRANSACTION, COMMIT, END TRANSACTION, ROLLBACK, SAVEPOINT, SET TRANSACTION, TXNISOLATION(), TXNLEVEL()
Description
The SAVE TRANSACTION statement identifies a stage within a transaction which can subsequently be used as ROLLBACK point. The name of the savepoint is specified in <savepoint>.
Issuing the SAVE TRANSACTION <savepoint> statement causes the TXNLEVEL() to increase by 1. If the transaction is rolled back to the <savepoint> using the ROLLBACK command, the TXNLEVEL will decrease by 1 and a partial rollback of the transaction will be carried out. Changes made since the specified <savepoint> was declared are discarded and the transaction continues from the <savepoint>.
A transaction is a sequence of SQL statements that Recital treats as a single unit. A transaction begins with the first executable SQL statement after a BEGIN TRANSACTION. A transaction ends with a COMMIT, ROLLBACK or END TRANSACTION.
Example
// config.db set sql to recital set sql on // end of config.db // SAVE TRANSACTION <savepoint> BEGIN TRANSACTION parent_and_child; 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()); SAVE TRANSACTION parent_added; INSERT INTO accounts (ORD_VALUE) VALUES (30); ROLLBACK TRANSACTION parent_added; END TRANSACTION; // End of program
Products
Recital Database Server, Recital Mirage Server, Recital Terminal Developer