如果更新为tbl_repair_visit.TENANTSATISFACTION = 'Poor'
,我有附加的触发器。SQL触发器
的问题,如果我们改变了工程师命名工程师列更新,并且触发再次运行我有,如果TENANTSATISFACTION = 'Poor'
我如何设置这在所有只运行,如果TENANTSATISFACTION = 'Poor'
列被更新和ignor更新其他列
ALTER TRIGGER [dbo].[tr_CustomerSatisfactionAlertRepair]
ON [dbo].[tbl_repair_visit]
AFTER UPDATE
AS
BEGIN
SET NOCOUNT ON;
INSERT alertmessagedata (TypeID, Contract, Address, ORDERID,
ENGINEERS, Sent, DateAdded)
SELECT '5', tbl_property.contract, tbl_property.fulladdress,
tbl_repair_visit.orderid, tbl_repair_visit.engineer,
0, GETDATE()
FROM TBL_REPAIR_VISIT
INNER JOIN
INSERTED X ON TBL_REPAIR_VISIT.VISITID = X.VISITID
INNER JOIN
TBL_PROPERTY ON TBL_REPAIR_VISIT.PROPREF = TBL_PROPERTY.PROPREF
WHERE tbl_repair_visit.TENANTSATISFACTION = 'Poor'
END
很好的例子。 – dkretz 2009-02-03 12:29:49