我有两个相同的表,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 - 你认为目前的编辑? –