我想写一个触发器,当特殊数据要插入我的表时运行 ,例如我的税表有两列
1.身份证
2.TAXVALUE
我想当数据要插入第 2 列时。检查数据是否包含“欧元”字符串,插入取消。我的意思是做任何事情而不是插入……如果包含“欧元”,则数据不应该被插入。请帮助我...非常感谢。:)
这应该这样做。
CREATE TRIGGER TrigerName ON SomeTable
INSTEAD OF INSERT
AS
BEGIN
INSERT INTO SomeTable
SELECT ID, TAXVALUE
FROM INSERTED
WHERE NOT TAXVALUE LIKE '%euro%'
END
触发器将是
ALTER TRIGGER [dbo].[yourtableinsert]
ON [dbo].[yourtable]
AFTER Insert
AS
BEGIN
delete from yourtable where id=inserted.id and inserted.TAXVALUE like '%euro%';
END
如果 TAXVALUE 包含欧元,这将删除插入的行。