2013-03-23 66 views
2

我使用SQL服務器2008,我有payment表和paymentLog表。SQL更新觸發錯誤 - (無法創建觸發器,因爲表具有更新級聯的外鍵)

Create Table Tab_Payment 
(
    Eid integer NOT NULL, 
    Date_of_Reflect date NOT NULL, 
    Amount integer NOT NULL, 
    ... 
    Constraint PK_Payment Primary Key(Eid,Date_of_Reflect), 
    Constraint FK_Emp Foreign key (Eid) references Tab_Employee(Eid) ON DELETE NO ACTION ON UPDATE CASCADE, 
); 

我將使用觸發器將數據插入到paymentLog。

Create Trigger Trigger_Payment_Audit 
on Tab_Payment 
after update 
As 
    ... 
GO 

我無法創建觸發器。錯誤來了。我應該怎麼做才能解決這個問題。
無法在'Tab_Payment'上創建INSTEAD OF UPDATE觸發器'Trigger_Payment_Audit'。這是因爲表具有級聯UPDATE的FOREIGN KEY。

我在SO上發現了類似的帖子。布特沒有幫助我。

回答

2

好的。最後我解決了我的問題。其實這裏並沒有真正的錯誤。這只是編輯指出的一個錯誤。即使它表明有錯誤,我也可以運行觸發器。