I have 3 before row-triggers for a table - an INSERT, an UPDATE, and a DELETE trigger.
When I try to EnableVersioning on this table it works fine when either or both of the INSERT and DELETE triggers exist. But when I add the UPDATE or just have the UPDATE trigger on the table I get the following message from EnableVersioning:
ORA-20229: statement 'DECLARE
schema varchar2(30) := 'WEDB' ;
tab_name varchar2(30) ' failed during EnableVersioning. Error:
ORA-24344: success with compilation error
ORA-06512: at "SYS.LTDDL", line 457
ORA-06512: at "SYS.LTDDL", line 1123
ORA-06512: at "SYS.LTDDL", line 1107
ORA-06512: at "SYS.LT", line 9024
ORA-06512: at line 2
We are running Oracle 10g Release 10.2.0.1.0.
The format of the trigger is:
CREATE or REPLACE trigger COLTG_OBA_TEST3_U
before update on OBA_TEST3
for each row
Does anyone have any ideas?
You need to determine the exact error in the procedure that is being created by enableversioning. If you query the dba_errors view, you should be able to get this information. There will most likely be errors in a procedure named WM$COLTG_OBA_TEST3_U.
Also, if you are able to post the body of the trigger, then that would help in determining what is causing the error.
Be sure that you are using the latest version of Workspace Manager. For a 10.2 database, this is currently 10.2.0.3.1.
"+1.10 Triggers on Version-Enabled Tables Version-enabled tables can have triggers defined; however, the following considerations and restrictions apply: ¦ Only per-row triggers are supported. Per-statement triggers are not supported. ¦ Only whole-row triggers are supported. *Before-update and after-update triggers for specific columns are not supported*.+" - "Application Developer’s Guide - Workspace Manager (B14253-01, 10g Release 2) [pg 1-23]