100+ PL/SQL Interview Questions and Answers for Experienced - 2

Question: 6

Is it possible to include an INSERT statement on the same table to which the trigger is assigned?

If an INSERT statement is used on the same table to which the trigger is associated, then this will give rise to a mutating table, as it is not possible to change the same table that is already in the process of being changed.

Question: 7

What does the BASE_OBJECT_TYPE column shows in the USER_TRIGGERS data dictionary view?

The BASE_OBJECT_TYPE column identifies the type of database is a TABLE, VIEW, SCHEMA, or DATABASE.

Question: 8

Is it possible to pass parameters to triggers?

No, it is not possible to pass parameters to triggers. However, triggers fired by INSERT and UPDATE statements can reference new data by using the: new prefix. In addition, the triggers fired in response to UPDATE and DELETE statements can reference old, modified, or deleted data using the :old prefix.

Question: 9

Can INSTEAD of triggers be applied to database tables?

No, INSTEAD of triggers cannot be applied to database tables as they are only used for database views. They are executed for each row and cannot be used as a statement-level triggers.

Question: 10

What is the difference between database trigger and stored procedure?

The main difference between database trigger and stored procedure is that the trigger is invoked implicitly and stored procedure is invoked explicitly. Transaction Control statements, such as COMMIT, ROLLBACK and SAVEPOINT, are not allowed within the body of a trigger; whereas, these statements can be included in a stored procedure.

Related Questions