禁用和启用触发器
如果触发器引用的对象不可用,或者您需要上载大量数据,避免触发器导致延迟(例如在恢复操作中),可能需要暂时禁用触发器。在引用的对象变为可用,或数据上载完毕后,可以重新启用触发器。
另请参见:
-
Oracle Database PL/SQL Language Reference(了解有关
ALTERTRIGGER语句的详细信息) -
Oracle Database SQL Language Reference(了解有关
ALTERTABLE语句的详细信息)
禁用或启用单个触发器
要禁用或启用单个触发器,请使用带有 DISABLE 或 ENABLE 子句的 DISABLE TRIGGER 或 ENABLE TRIGGER 工具或 ALTER TRIGGER 语句。
例如,以下语句禁用并启用 eval_change_trigger:
ALTER TRIGGER eval_change_trigger DISABLE;
ALTER TRIGGER eval_change_trigger ENABLE;
要使用“禁用触发器”或“启用触发器”工具:
-
在 "Connections"(连接)框架中,展开 hr_conn 。
-
在方案对象类型列表中,展开触发器。
-
在触发器列表中,右键单击所需的触发器。
-
在选项列表中,选择禁用或启用。
-
在“禁用”或“启用”窗口中,选择应用。
-
在“确认”窗口中,选择确定。
禁用或启用单个表上的所有触发器
要禁用或启用特定表上的所有触发器,请使用带有 DISABLE ALL TRIGGERS 或 ENABLE ALL TRIGGERS 子句的 ALTER TABLE 语句。禁用或启用特定表上的所有触发器
例如,以下语句禁用并启用评估表上的所有触发器:
ALTER TABLE evaluations DISABLE ALL TRIGGERS;
ALTER TABLE evaluations ENABLE ALL TRIGGERS;
要使用“禁用所有触发器”或“启用所有触发器”工具,请使用:
-
在 "Connections"(连接)框架中,展开 hr_conn 。
-
在方案对象类型的列表中,展开表。
-
在表列表中,右键单击所需的表。
-
在选项列表中,选择触发器。
-
在选项列表中,选择全部禁用或全部启用。
-
在 "Disable All" 或 "Enable All" 窗口中,选择 Apply 。
-
在“确认”窗口中,选择确定。