Last but definitely not least is the NOCASCADE_FORCE mode. It implements the following rule when backing out transactions. Backout the desired transaction on an as-is, where-is basis. Here’s an example: — save the current SCN SQL> BEGIN 2 hold_stuff.v_scn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER; 3 END; 4 / PL/SQL procedure successfully completed. — Perform a single insert in … Read more
The third mode available for backing out transactions is NOCONFLICT_ONLY mode. It implements the following rule: Only backout transactions for records that were not touched by any subsequent transactions. Here’s an example that inserts 2 records in one transaction and then updates one of them in another. Then an attempt is made to backout the … Read more
In my previous blog entry I introduced the NOCASCADE mode. Thus you probably guessed there would be a CASCADE mode as well. And you would be correct. I won’t show all of the SQL for the test case because that is available in the CASCADE blog entry. I’ll just highlight the change and show the … Read more
There are 4 modes that TRANSACTION_BACKOUT can be run in. The mode setting determines how the backout reacts to subsequent transactions that operate on any of the records it touches. The default mode is NOCASCADE which implements the following behaviour. If any of the records touched by the transaction being backed out were subsequently touched … Read more
The TRANSACTION_BACKOUT feature executes SQL to backout or undo the specific changes from the desired transactions. For example the UPDATE in the previous post is undone with this SQL statement. update “DRH”.”DEMO” set “DEMO_NAME” = ‘Demo 1’ where “DEMO_ID” = ‘1’ and “DEMO_NAME” = ‘Demo One’; The undo SQL identifies the specific record by including … Read more
Oracle’s TRANSACTION_BACKOUT function does just what it’s name implies – it backs out committed transactions. Here is an example: — Create a simple demo table SQL> CREATE TABLE demo 2 ( demo_id NUMBER NOT NULL PRIMARY KEY, 3 demo_name VARCHAR2(30) NOT NULL UNIQUE ); Table created. — Insert a record SQL> BEGIN 2 INSERT INTO … Read more
As a long tine use of Relational Databases I live by the rule that data must be stored in and retrieved from table. And those tables must have columns. But JSON plays by it’s own rules by allowing random attribute-value pairs with no consistency enforced. But the latest version of my most used database, Oracle … Read more
My blog…and backup…got corrupted.