For every DML from a group of users, I want to trap the DML against several or all tables (that's the easy part).
But instead of proceeding with just changing column values before or after the DML event, I want to substitute an alternate DML statement based on the table, user, and so forth.
I know that triggers can't do COMMIT or transactions unless I use a PRAGMA, and I know I can retrieve the actual SQL statement in a trigger (if that's the best place to trap it), so I can use DBMS_SCHEDULER or similar.
But HOW do I "abort" the original DML statement from the trigger point of view without raising an exception... or raise an exception but return a non-exception error code? I don't want to abort the calling procedure by passing the exception handling to it.
OR, any other ideas on how to do this... THANKS