2016-05-16 189 views
0

我需要創建一個觸發器將記錄添加到第二個表。SQL Server 2008 R2觸發器標識列

  • 第一個表:tab_esami
  • 二表:tab_valutazioni

我創建這個觸發器:

CREATE TRIGGER [dbo].[NewTrigger] 
ON [dbo].[tab_esame] 
AFTER INSERT 
AS 
BEGIN 
    /* Trigger action goes here. */ 
    SET IDENTITY_INSERT TAB_VALUTAZIONI ON 

    INSERT INTO tab_valutazioni(tab_utenti_id, nume_colesterolo, 
           nume_hdl, nume_ldl, nume_trigliceridi, 
           nume_glicemia, data_insert) 
     SELECT 
      id_paziente, colesterolo_totale, 
      hdl, ldl, trigliceridi, 
      glicemia, data_esame 
     FROM 
      INSERTED 
END 
GO 

但是,當我嘗試插入一條記錄tab_esami我得到一個錯誤:

Error_ON_insert

你能幫我嗎?

idtab_valutazioni是「ID」,這是與自動增量性質的主鍵..

感謝

+0

什麼是錯誤? – Stivan

+0

你也從來沒有關閉括號後打開它''後你打開它''GO''應該只是'GO' – Stivan

+0

我會建議**不要**插入任何值到'tab_valutazioni.ID'(你不' t似乎正在這樣做),並讓SQL Server自己處理自動增量ID,在這種情況下,你不需要** SET IDENTITY_INSERT TAB_VALUTAZIONI ON設置,並且應該從你的觸發器中刪除它。**還有:**每當你把這個設置**開啓**爲一張桌子 - 確保如果返回**關閉**一旦你完成你的插入! –

回答

0

如果你想此代碼工作正常,你應該設置標識列。看到這個。 enter image description here

+0

非常感謝..我忘了進入身份專欄 – user118258