alter table yourTabel disable trigger yourTrigger -- 禁用alter table yourTable enable trigger yourTrigger -- 启用
解决方案 »
- sql server2000与2005哪个更好?
- 怎样建立一个触发器时在a表中输入编号和月份时在b表中自动触发执行输入相同编号和月份。
- 怎么创建拥有sa账号相同权限的账号
- 三个条件才能确认一条记录~如何写修改语句?
- SQL Server 已 1 次遇到了针对数据库...所需完成时间超过 15 秒
- SQL语句可以复制库中的一个表并改其为新的名字么?
- 索引和几个简单的查询问题,谢谢!
- sql 问题,看似简单却不知道如何下手的
- 紧急提问,在线等候,关于SQL 语句的问题
- MAPINFO问题!!十万火急!!
- 请问怎样用insert语句将变量数据插入到含有identify属性的表中。
- 菜鸟初学问题,备份数据库的时候如何截断日志……
下例使用 ALTER TABLE 的 DISABLE TRIGGER 选项来禁用触发器,以使正常情况下会违反触发器条件的插入操作得以执行。然后下例使用 ENABLE TRIGGER 重新启用触发器。CREATE TABLE trig_example
(id INT,
name VARCHAR(10),
salary MONEY)
go
-- Create the trigger.
CREATE TRIGGER trig1 ON trig_example FOR INSERT
as
IF (SELECT COUNT(*) FROM INSERTED
WHERE salary > 100000) > 0
BEGIN
print "TRIG1 Error: you attempted to insert a salary > $100,000"
ROLLBACK TRANSACTION
END
GO
-- Attempt an insert that violates the trigger.
INSERT INTO trig_example VALUES (1,"Pat Smith",100001)
GO
-- Disable the trigger.
ALTER TABLE trig_example DISABLE TRIGGER trig1
GO
-- Attempt an insert that would normally violate the trigger
INSERT INTO trig_example VALUES (2,"Chuck Jones",100001)
GO
-- Re-enable the trigger.
ALTER TABLE trig_example ENABLE TRIGGER trig1
GO
-- Attempt an insert that violates the trigger.
INSERT INTO trig_example VALUES (3,"Mary Booth",100001)
GO