2011-03-04 136 views
0
CREATE TRIGGER dbo.updateTrigger 
    ON dbo.Education 
    AFTER UPDATE 
    AS 
BEGIN 
    SET NOCOUNT ON; 
IF NOT (UPDATE(HighestDegreeDoc) OR UPDATE (GPA) OR UPDATE (CreditHours)) 
    RETURN 
UPDATE dbo.School 
set Uploaded =1 
from dbo.School 
JOIN inerted i ON i.Uploaded = School.Uploaded 
END 
GO 

這段代碼錯了什麼。我試圖更新學校表中的字段,當(HighestDegreeDoc,GPA,CrediHours)更新教育表時更新字段。注:教育表已超過15場,(上傳場學校表的更新只有當這些3場變化)在一個表格中使用觸發器並更新另一個表格

回答

1

只是一個猜測....

JOIN惰化,我對i.Uploaded = School.Uploaded

應該是...

JOIN inserted i ON i.SchoolId = School.SchoolId 

貌似更新是某種標誌你正在設置。您可能想要加入ID列。

+0

是的這是正確的,我想把國旗。好的,我會嘗試ID – dca 2011-03-04 14:21:28

0

這只是一個錯字的錯誤:它是join inserted;)

而且我不認爲你的加盟條件很好。

你能給我們ddl嗎?

+0

是的,但我是新的sql – dca 2011-03-04 14:20:31

相關問題