仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'dbo.cangchuchayi'中的标识列指定显式值。
但是出现错误信息:消息 8101,级别 16,状态 1,第 1 行
仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'dbo.cangchuchayi'中的标识列指定显式值。
把set去掉后出现这个提示,以前一直好用,重新做完系统,装上SQL2008后就出现这个提示。
EXCEL的列名与cangchuchayi是对应的 展开
才能显示的添加,你在select * 中把*改成列名,去掉标识列就可以了
如果是需要添加的,那么用set IDENTITY_INSERT cangchuchayi on
来打开开关,但是需要显示指定列名,即insert into 表(列名1...)
插入后用off关闭
查询成功了,但是数据没添加进去
如我上面所说的啊,你想怎么添加呢?是要标识列的还是不要的?
然后照我说的操作报什么错误?
这个问题是因为在你要插入的新表里,有一列是标识列,例如自增这样的。所以会导致在插入数据的时候报错,因为不能往标识列里插入数据。
解决方法:例如一个SQL语句,INSERT INTO a表名 SELECT * FROM b表名。
b表有列1,2,3,列1在a表里是标识列(如自增),正确语句应该是INSERT INTO a表名 SELECT 列2,列3 FROM b表名。
扩展资料:
常见SQL语句:
更新:update table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)
排序:select * from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1[separator]
参考资料:百度百科——sql语句