--try:CREATE TRIGGER Barn_Branch_IU ON dbo.Barn_Branch instead of INSERT,update
AS
begin
delete Barn_Branch from Barn_Branch a,deleted b where rtrim(ltrim(a.ProBarcode))=b.ProBarcode
AND ltrim(rtrim(a.pihao))=b.piao AND ltrim(rtrim(a.BranchCode))=b.BranchCode
insert into Barn_Branch select * from inserted
end
--这样?
CREATE TRIGGER Barn_Branch_IU ON dbo.Barn_Branch instead of INSERT,update
AS
begin
if exists(select 1 from Barn_Branch a where exists(select 1 from inserted where rtrim(ltrim(a.ProBarcode))=ProBarcode
AND ltrim(rtrim(a.pihao))=piao AND ltrim(rtrim(a.BranchCode))=BranchCode))
begin
update Barn_Branch set Sum_Num=Sum_Num+b.Sum_Num,Pei_Price=Pei_Price+b.Pei_Price from Barn_Branch a,inserted b
where rtrim(ltrim(a.ProBarcode))=b.ProBarcode
AND ltrim(rtrim(a.pihao))=b.piao AND ltrim(rtrim(a.BranchCode))=b.BranchCode
end
else
insert into Barn_Branch select * from inserted
end
SET Sum_Num=Sum_Num+i.Sum_Num,
Pei_Price=i.Pei_Price
FROM inserted i
WHERE Barn_Branch.ProBarcode=i.ProBarcode and Barn_Branch.pihao=i.pihao and Barn_Branch.BranchCode=i.BranchCode这样试下