仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表中的标识列指定显式值


今天在处理数据时遇到这样一个错误

消息 8101,级别 16,状态 1,第 1 行

仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'dbo.StockDetailValue'中的标识列指定显式值。

遇到这个问题怎么去处理呢?

 

----表一
CREATE TABLE TB1(ID INT IDENTITY(1,1),NAME VARCHAR(100))
----表二
CREATE TABLE TB2(ID INT IDENTITY(1,1),NAME VARCHAR(100))
---插入测试数据
insert into TB1 SELECT 'JACK1'
insert into TB1 SELECT 'JACK2'
insert into TB1 SELECT 'JACK3'
insert into TB1 SELECT 'JACK4'
----------将表一的数据插入到表二
insert into TB2 Select * From TB1

 

运行上面的代码,结果出错了

解决办法:指定列就OK

insert into TB2(NAME) Select NAME From TB1

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM