不用游标的: CREATE TRIGGER [TR_PMS_IUD] ON [PMS] FOR INSERT, UPDATE, DELETE AS SET NOCOUNT ON begin transaction t update CutQlyPlanDet set CutQlyQTY=CutQlyPlanDet.CutQlyQTY-a.PassQTY from Deleted a where CutQlyPlanDet.ProduceNo=a.ProduceNo and CutQlyPlanDet.CutQlyPlanNo=a.PlanNo and a.ProssID='01' update PrintPlanDet set PrintQTY=PrintPlanDet.PrintQTY-a.PassQTY from Deleted a where PrintPlanDet.ProduceNo=a.ProduceNo and PrintPlanDet.PrintPlanNo=a.PlanNo and a.ProssID='02' update CutQlyPlanDet set CutQlyQTY=CutQlyPlanDet.CutQlyQTY+a.PassQTY from inserted a where CutQlyPlanDet.ProduceNo=a.ProduceNo and CutQlyPlanDet.CutQlyPlanNo=a.PlanNo and a.ProssID='01' update PrintPlanDet set PrintQTY=PrintPlanDet.PrintQTY+a.PassQTY from Inserted a where PrintPlanDet.ProduceNo=a.ProduceNo and PrintPlanDet.PrintPlanNo=a.PlanNo and a.ProssID='02' commit transaction t
CREATE TRIGGER [TR_PMS_IUD] ON [PMS]
FOR INSERT, UPDATE, DELETE
AS
SET NOCOUNT ON
begin transaction t
update CutQlyPlanDet set CutQlyQTY=CutQlyPlanDet.CutQlyQTY-a.PassQTY
from Deleted a
where CutQlyPlanDet.ProduceNo=a.ProduceNo
and CutQlyPlanDet.CutQlyPlanNo=a.PlanNo and a.ProssID='01' update PrintPlanDet set PrintQTY=PrintPlanDet.PrintQTY-a.PassQTY
from Deleted a
where PrintPlanDet.ProduceNo=a.ProduceNo
and PrintPlanDet.PrintPlanNo=a.PlanNo and a.ProssID='02' update CutQlyPlanDet set CutQlyQTY=CutQlyPlanDet.CutQlyQTY+a.PassQTY
from inserted a
where CutQlyPlanDet.ProduceNo=a.ProduceNo
and CutQlyPlanDet.CutQlyPlanNo=a.PlanNo and a.ProssID='01' update PrintPlanDet set PrintQTY=PrintPlanDet.PrintQTY+a.PassQTY
from Inserted a
where PrintPlanDet.ProduceNo=a.ProduceNo
and PrintPlanDet.PrintPlanNo=a.PlanNo and a.ProssID='02'
commit transaction t