问题描述:
消息 8101,级别 16,状态 1,第 1 行仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'CUSTOMER_TBL'中的标识列指定显式值。
像这样的问题怎么解决呢?
问题分析:
意思是你的主键是自动编号类型的,所以不能向该列插入数据。
解决办法:
执行 语句 :SET IDENTITY_INSERT CUSTOMER_TBL ON
然后在向表中插入数据,如insert into [HOTEL_DB].dbo.CUSTOMER_TBL(CUS_ALLMONEY,CUS_CARDID,CUS_DUETIME,CUS_ID,CUS_INTIME,CUS_MONEY,CUS_NAME,CUS_NOTES,CUS_PHONE,CUS_SEX,CUS_STATUS,RM_ID) select CUS_ALLMONEY,CUS_CARDID,CUS_DUETIME,CUS_ID,CUS_INTIME,CUS_MONEY,CUS_NAME,CUS_NOTES,CUS_PHONE,CUS_SEX,CUS_STATUS,RM_ID from [D:\MY DOCUMENTS\VISUAL STUDIO 2010\PROJECTS\HOTELMANAGER\HOTELMANAGER\DB\HOTEL.MDF].dbo.CUSTOMER_TBL这是把一个表里面的全部数据拷贝给另一个表。
如果还要向另一个表中插入数据的话,就要
执行 语句 :SET IDENTITY_INSERT CUSTOMER_TBL OFF
然后 打开要插入的另一个表
执行 语句 :SET IDENTITY_INSERT ROOM_TBL ON
接着插入数据,就OK了。