To specify when a deferrable constraint is checked, you must have
SELECT privilege on the table to which the constraint is applied unless the table is in your schema.
Specify the name of one or more integrity constraints.
ALL to set all deferrable constraints for this transaction.
IMMEDIATE to indicate that the conditions specified by the deferrable constraint are checked immediately after each DML statement.
DEFERRED to indicate that the conditions specified by the deferrable constraint are checked when the transaction is committed.
Note:You can verify the success of deferrable constraints prior to committing them by issuing a
SET CONSTRAINTS ALL IMMEDIATE;
The following statement checks three deferred constraints when the transaction is committed. This example fails if the constraints were specified to be
SET CONSTRAINTS emp_job_nn, emp_salary_min , hr.jhist_dept_fk@remote DEFERRED;