写了一个触发器,报“消息 4104,级别 16,状态 1,过程 TR_Total_Score,第 15 行
无法绑定由多个部分组成的标识符 "inserted.CheckID"”
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GOCREATE TRIGGER TR_Total_Score
ON CheckScore
AFTER INSERT,DELETE,UPDATE
AS
BEGIN SET NOCOUNT ON; UPDATE [StandardCheck] SET [TotalScore] = (SELECT SUM(GetScore) FROM CheckScore Where CheckID=inserted.CheckID) WHERE CheckID=inserted.CheckIDEND
GO其中要把 CheckScore表中列GetSore的符合记录的值汇总改写StandardCheck表的TotalScore列,在线等。多谢。
无法绑定由多个部分组成的标识符 "inserted.CheckID"”
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GOCREATE TRIGGER TR_Total_Score
ON CheckScore
AFTER INSERT,DELETE,UPDATE
AS
BEGIN SET NOCOUNT ON; UPDATE [StandardCheck] SET [TotalScore] = (SELECT SUM(GetScore) FROM CheckScore Where CheckID=inserted.CheckID) WHERE CheckID=inserted.CheckIDEND
GO其中要把 CheckScore表中列GetSore的符合记录的值汇总改写StandardCheck表的TotalScore列,在线等。多谢。
ON CheckScore
AFTER INSERT,DELETE,UPDATE
AS
BEGIN SET NOCOUNT ON; UPDATE [StandardCheck]
SET [TotalScore] = (SELECT SUM(GetScore) FROM CheckScore Where CheckID=inserted.CheckID)
FROM Inserted
WHERE CheckID=inserted.CheckID END
GO
哈哈,晕了,越看越复杂,本来是简单的一句SQL。
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO CREATE TRIGGER TR_Total_Score
ON CheckScore
AFTER INSERT,DELETE,UPDATE
AS
BEGIN SET NOCOUNT ON; UPDATE a SET a.[TotalScore] = (SELECT SUM(GetScore) FROM CheckScore Where CheckID=inserted.CheckID)
from [StandardCheck] a,Inserted b
WHERE a.CheckID=b.CheckID END
GO
不是标准的DML语句。