SET CONSTRAINTS sets the behavior of constraint
   evaluation in the current transaction. In
   IMMEDIATE mode, constraints are checked at the end
   of each statement. In DEFERRED mode, constraints
   are not checked until transaction commit.
  
   Upon creation, a constraint is always give one of three
   characteristics: INITIALLY DEFERRED,
   INITIALLY IMMEDIATE DEFERRABLE, or
   INITIALLY IMMEDIATE NOT DEFERRABLE. The third
   class is not affected by the SET CONSTRAINTS
   command.
  
Currently, only foreign key constraints are affected by this setting. Check and unique constraints are always effectively initially immediate not deferrable.