我有兩個相同的表,I_Subject
和I_Temp_Subject
,我想複製Temp_Subject
表到Subject
表。簡單用戶使用I_Temp_Subject
,管理員使用I_Subject
。管理員可以直接插入新記錄到I_Subject
並驗證I_Temp_Subject
的內容。之前插入觸發SQL
這兩個表ID都設置爲自動增量。複製SQL命令如下:
INSERT INTO I_SUBJECT(ID,CATEGORY_ID,USER_NAME,SERIAL_NUMBER,ICON)
SELECT ID,CATEGORY_ID,USER_NAME,SERIAL_NUMBER,ICON FROM I_TEMP_SUBJECT
如果我這樣做,那麼會出現以下錯誤:
System.Data.SqlClient.SqlException: Cannot insert explicit value for identity
column in table 'I_SUBJECT' when IDENTITY_INSERT is set to OFF.
如果我不包括在上面的語句中的ID,然後一切都只是確定ID不相同。
所以我想包括一個插入前觸發器來檢查插入是否有空ID然後自動增量(當管理員直接插入)否則如果插入ID!= null,然後從I_Temp_Subject
複製ID(當管理員驗證)。
馬哈茂德·請編輯在編輯正確 – Sohail
我沒有發現太大的區別。編輯之前也很好 – Sohail
@Sohail - 你認爲目前的編輯? –