Details
-
Task
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
None
Description
Currently, there is no easy way to temporarily disable triggers. This is important for some users. It might be a good idea to have some (maybe not all?) of the following:
Temporarily disable all triggers on a particular table:
ALTER TABLE foo DISABLE TRIGGERS;
|
Re-enable the triggers:
ALTER TABLE foo ENABLE TRIGGERS;
|
Disable a particular trigger on a table:
ALTER TABLE foo DISABLE TRIGGER bar;
|
Re-enable it:
ALTER TABLE foo ENABLE TRIGGER bar;
|
Disable triggers for a particular user:
ALTER TABLE foo DISABLE TRIGGERS FOR CURRENT_USER();
|
Disable all triggers for current session (maybe requires superuser privileges?):
SET disable_triggers = ON;
|