Oracle-ddl相关命令 alter table 是ddl操作。 ddl操作隐含commit-不了解这一点,可能你下一次会在其它的类似alter index 。。。等语句上再次触雷。
--关闭某表上所有trriger alter table table_name disable all triggers;
--开启某表上所有trriger alter table table_name enable all triggers
If you need to bring a copy of the database from production to another environment, you may want to disable all the triggers for all tables. Here is a simple syntax you can use to accomplish this.
First you could specify the specific table(s) for which you want to disable triggers. ALTER TABLE [dbo].[MyTable] DISABLE TRIGGER ALL
The re-enable all triggers just use this syntax. ALTER TABLE [dbo].[MyTable] ENABLE TRIGGER ALL Finally, if you don't want to specify the tables (perhaps because you have triggers on many tables) then just use sp_msforeachtable. EXEC sp_msforeachtable "ALTER TABLE ? DISABLE TRIGGER ALL" Share this Tidbit。