我有一个名为Page
的表,该表有一个名为Priority
的列。我希望当我在页面表中插入一行时,优先级列采用插入行PageId
的值。 PageId
是我的表主键。
我为它写了这个触发器:
CREATE TRIGGER PagePriority
ON [Page]
AFTER INSERT
AS
Begin
update inserted
set [Priority]=(select PageId from [Page] where Page.PageId=inserted.PageId)
End
但我在set
行上有一些错误。
怎么做?
答案 0 :(得分:1)
尝试以下(假设PageId是int)
CREATE TRIGGER PagePriority
ON [Page]
AFTER INSERT
AS
Begin
DECLARE @thePageId integer = 0
SET @thePageId = (SELECT PageId from inserted)
update [Page]
set [Page].Priority = @thePageId where [Page].PageId = @thePageId
End