By combining a set of related operations into a unit that either completely succeeds or completely fails, one can simplify error recovery and make one's application more reliable.
Transaction processing systems consist of computer hardware and software hosting a transaction-oriented application that performs the routine transactions necessary to conduct business.
8 loop l_query := replace( l_query, lpad('@',10-i,'@'), '@' ); l_query := replace( l_query, lpad(' ',10-i,' '), ' ' ); end loop; return upper(l_query); end; / update t1 set sql_text_wo_constants = remove_constants(sql_text); select sql_text_wo_constants, count(*) from t1 group by sql_text_wo_constants having count(*) 100 order by 2 / The output of that last query will show you statements that are identical in the shared pool after all numbers and character string constants have been removed.
These statements -- and more importantly their counts -- are the potential bottlenecks.
This can be changed in the options dialog, that is accessible from will display the online manual for the current DBMS (if there is one).
Where possible the link will display the manual that corresponds to the version of the current connection.
If you use "insert into t values ( :x )", and bind the value of 1 -- then the next person that runs that insert will benefit from your work and run that much faster.
If you discover your applications do not use bind variables -- you must have this corrected.
Because the trigger uses the clause, it might be executed multiple times, such as when updating or deleting multiple rows.
You might omit this clause if you just want to record the fact that the operation occurred, but not examine the data for each row.
If this privilege is later revoked, you can drop the trigger but not alter it.
The object privileges to the schema objects referenced in the trigger body must be granted to the trigger owner explicitly (not through a role).