PL/SQL Triggers (original) (raw)
BEFORE ALTER
AFTER ALTER
When catalog object is altered
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_type ora_dict_obj_name ora_dict_obj_owner ora_des_encrypted_password (for ALTER USER events) ora_is_alter_column (for ALTER TABLE events) ora_is_drop_column (for ALTER TABLE events)
BEFORE DROP
AFTER DROP
When catalog object is dropped
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_type ora_dict_obj_name ora_dict_obj_owner
BEFORE ANALYZE
AFTER ANALYZE
When ANALYZE
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner
BEFORE ASSOCIATE STATISTICS
AFTER ASSOCIATE STATISTICS
When ASSOCIATE
STATISTICS
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner ora_dict_obj_name_list ora_dict_obj_owner_list
BEFORE AUDIT
AFTER AUDIT
BEFORE NOAUDIT
AFTER NOAUDIT
When AUDIT
or NOAUDIT
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name
BEFORE COMMENT
AFTER COMMENT
When object is commented
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner
BEFORE CREATE
AFTER CREATE
When catalog object is created
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_type ora_dict_obj_name ora_dict_obj_owner ora_is_creating_nested_table (for CREATE TABLE events)
BEFORE DDL
AFTER DDL
When most SQL DDL statements are issued. Not fired for ALTER
DATABASE
, CREATE
CONTROLFILE
, CREATE
DATABASE
, and DDL issued through the PL/SQL subprogram interface, such as creating an advanced queue.
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner
BEFORE DISASSOCIATE STATISTICS
AFTER DISASSOCIATE STATISTICS
When DISASSOCIATE
STATISTICS
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner ora_dict_obj_name_list ora_dict_obj_owner_list
BEFORE GRANT
AFTER GRANT
When GRANT
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner ora_grantee ora_with_grant_option ora_privilege_list
BEFORE LOGOFF
At start of user logoff
Simple conditions on UID
and USER
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name
AFTER LOGON
After successful user logon
Simple conditions on UID
and USER
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Starts separate transaction and commits it after firing triggers.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_client_ip_address
BEFORE RENAME
AFTER RENAME
When RENAME
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_owner ora_dict_obj_type
BEFORE REVOKE
AFTER REVOKE
When REVOKE
statement is issued
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner ora_revokee ora_privilege_list
AFTER SUSPEND
After SQL statement is suspended because of out-of-space condition.
(Trigger must correct condition so statement can be resumed.)
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_server_error ora_is_servererror ora_space_error_info
BEFORE TRUNCATE
AFTER TRUNCATE
When object is truncated
Simple conditions on type and name of object, UID
, and USER
Trigger cannot do DDL operations on object that caused event to be generated.
DDL on other objects is limited to compiling an object, creating a trigger, and creating, altering, and dropping a table.
Fires triggers in current transaction.
ora_sysevent ora_login_user ora_instance_num ora_database_name ora_dict_obj_name ora_dict_obj_type ora_dict_obj_owner