hi, Im facing a problem. I've a trigger which is getting fired while afteer insertion (statement)of a table.But that parent statement is not getting commited. I do wanna parent insert into be commited before firing the trigger or before trying to do some actions inside my trigger.. any kind of suggestions??thanx.
Maybe an insert trigger is not what you want. Or check this out
BEFORE and AFTER Triggers When defining a trigger, you can specify the trigger timing--whether the trigger action is to be executed before or after the triggering statement. BEFORE and AFTER apply to both statement and row triggers. BEFORE and AFTER triggers fired by DML statements can be defined only on tables, not on views. However, triggers on the base tables of a view are fired if an INSERT, UPDATE, or DELETE statement is issued against the view. BEFORE and AFTER triggers fired by DDL statements can be defined only on the database or a schema, not on particular tables. See Also: "INSTEAD OF Triggers" "Triggers on System Events and User Events" for information about how BEFORE and AFTER triggers can be used to publish information about DML and DDL statements
BEFORE Triggers BEFORE triggers execute the trigger action before the triggering statement is executed. This type of trigger is commonly used in the following situations: When the trigger action determines whether the triggering statement should be allowed to complete. Using a BEFORE trigger for this purpose, you can eliminate unnecessary processing of the triggering statement and its eventual rollback in cases where an exception is raised in the trigger action. To derive specific column values before completing a triggering INSERT or UPDATE statement. AFTER Triggers AFTER triggers execute the trigger action after the triggering statement is executed. Trigger Type Combinations Using the options listed previously, you can create four types of row and statement triggers: BEFORE statement trigger Before executing the triggering statement, the trigger action is executed. BEFORE row trigger Before modifying each row affected by the triggering statement and before checking appropriate integrity constraints, the trigger action is executed, provided that the trigger restriction was not violated. AFTER row trigger After modifying each row affected by the triggering statement and possibly applying appropriate integrity constraints, the trigger action is executed for the current row provided the trigger restriction was not violated. Unlike BEFORE row triggers, AFTER row triggers lock rows. AFTER statement trigger After executing the triggering statement and applying any deferred integrity constraints, the trigger action is executed. You can have multiple triggers of the same type for the same statement for any given table. For example, you can have two BEFORE statement triggers for UPDATE statements on the EMP table. Multiple triggers of the same type permit modular installation of applications that have triggers on the same tables. Also, Oracle materialized view logs use AFTER row triggers, so you can design your own AFTER row trigger in addition to the Oracle-defined AFTER row trigger. You can create as many triggers of the preceding different types as you need for each type of DML statement, (INSERT, UPDATE, or DELETE). For example, suppose you have a table, SAL, and you want to know when the table is being accessed and the types of queries being issued. The following example contains a sample package and trigger that tracks this information by hour and type of action (for example, UPDATE, DELETE, or INSERT) on table SAL. The global session variable STAT.ROWCNT is initialized to zero by a BEFORE statement trigger. Then it is increased each time the row trigger is executed. Finally the statistical information is saved in the table STAT_TAB by the AFTER statement trigger.