是SQL Server吗?如果是SQL Server的话用instead of触发器。举个例子 --创建一个测试表 CREATE TABLE TestTable(a int,b int); GO --在表上创建instead of 触发器,触发器检查插入的数据,只有a=1或b=1的情况下数据才能插入 CREATE TRIGGER TG_TestTable_Insert ON TestTable INSTEAD OF INSERT AS INSERT INTO TestTable(a,b) SELECT a,b FROM INSERTED WHERE a=1 OR b=1 GO --先测试一个不符合条件的记录 INSERT INTO TestTable(a,b) SELECT 2,2
--结果表中没有数据 SELECT * FROM TestTable
--插入2条符合条件的记录 INSERT INTO TestTable(a,b) SELECT 1,2 INSERT INTO TestTable(a,b) SELECT 2,1 --表中有2条记录 SELECT * FROM TestTable