I'm experimenting with flashback and I am puzzled with the results of querying flashback_transaction_query. Specifically, I have a transaction that updates 18 rows in a table. After the update, a flashback query against the table returns (via the versions_xid pseudocolumn) the transaction ID that performed the update. Then, a query of flashback_transaction_query on that xid returns 1 row, not 18 as I would have expected. The undo_sql is accurate for restoring one row of the 18 updated, but what about the other 17? PB@t03a> select current_scn from v$database; CURRENT_SCN ----------- 353809838 PB@t03a> update foo set timestamp=3Dsysdate,object_id=3Dmod(object_id,5) where owner =3D'SYSTEM'; 18 rows updated. PB@t03a> commit; Commit complete. PB@t03a> select timestamp, object_id, versions_xid from foo 2 versions between scn 353809838 and maxvalue where owner =3D 'SYSTEM 3 order by versions_xid'; TIMESTAMP OBJECT_ID VERSIONS_XID ------------------- ---------- ---------------- 05/09/2005 17:16:50 3 06002100DFB30100 05/09/2005 17:16:50 4 06002100DFB30100 05/09/2005 17:16:50 3 06002100DFB30100 05/09/2005 17:16:50 2 06002100DFB30100 05/09/2005 17:16:50 1 06002100DFB30100 05/09/2005 17:16:50 0 06002100DFB30100 05/09/2005 17:16:50 4 06002100DFB30100 05/09/2005 17:16:50 3 06002100DFB30100 05/09/2005 17:16:50 0 06002100DFB30100 05/09/2005 17:16:50 3 06002100DFB30100 05/09/2005 17:16:50 4 06002100DFB30100 05/09/2005 17:16:50 2 06002100DFB30100 05/09/2005 17:16:50 4 06002100DFB30100 05/09/2005 17:16:50 0 06002100DFB30100 05/09/2005 17:16:50 4 06002100DFB30100 05/09/2005 17:16:50 0 06002100DFB30100 05/09/2005 17:16:50 4 06002100DFB30100 05/09/2005 17:16:50 3 06002100DFB30100 2005-03-23:20:32:29 2933 2005-04-06:21:44:19 1322450 2005-04-06:21:44:19 1322449 2005-04-06:21:44:19 1322448 2005-03-23:20:36:04 1274954 2005-03-23:20:36:04 1274953 2005-03-23:20:36:04 1274952 2005-04-08:17:27:56 1324530 2005-04-08:17:27:56 1324529 2003-05-06:13:27:35 6249 2003-05-06:13:27:34 6245 2003-05-06:13:06:17 2934 2003-05-06:13:06:17 2935 2003-05-06:13:06:17 2936 2003-05-06:13:06:17 2937 2003-05-06:13:06:18 2938 2003-05-06:13:06:18 2939 2003-05-06:13:11:14 3898 36 rows selected. PB@t03a> PB@t03a> PB@t03a> select table_name, operation, undo_sql from flashback_transaction_= query 2 where xid=3Dhextoraw('06002100DFB30100'); TABLE_NAME ---------------------------------------------------------------------------= ----- OPERATION -------------------------------- UNDO_SQL ---------------------------------------------------------------------------= ----- FOO UPDATE update "PB"."FOO" set "OBJECT_ID" =3D '2933', "TIMESTAMP" =3D '2005-03-23:2= 0:32:29' where ROWID =3D 'AAFw4kAAOAAAHTNAAD'; BEGIN --=20 Paul Baumgartel paul.baumgartel@xxxxxxxxx -- //www.freelists.org/webpage/oracle-l