SQL SERVER 从一个表复制数据到另一表
基本语句:SELECT INTO
复制数据到新表
复制原表所有数据到新表
SELECT *
INTO 目标表
FROM 原表
或者只复制希望的列插入到新表中:
SELECT column_name(s)
INTO 目标表
FROM 原表
复制数据到已存在的目标表
复制原表所有数据到新表
insert into 目标表 select * from 原表
或者只复制希望的列插入到新表中:
SELECT column_name(s)
INTO 目标表 [IN externaldb]
FROM 原表
异常处理
插入数据时,提示“仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表’Label1_ProductUniquePD’中的标识列指定显式值。”
解决办法:
set identity_insert 目标表 on
[code]
set identity_insert 目标表 off
注意:不能省略列名
set identity_insert 目标表 on
SELECT column_name(s)
INTO 目标表 [IN externaldb]
FROM 原表
set identity_insert 目标表 off
实例:
set identity_insert Label1_ProductUniquePD on
insert into Label1_ProductUniquePD(
[ID]
,[ObjectID]
,[单据日期]
,[单据编码]
,[存货编码]
,[存货名称]
,[规格型号]
,[条码]
,[打印时间]
,[转入时间]
,[判定时间]
,[操作人员]
,[生成时间]
,[盘点时间]
,[盘点人员]
,[是否合格]
,[是否报废]
,[当前工序]
,[接收工序]
,[流程编号]
,[打印次数]
,[仓库编码]
,[补打原因]
,[补打说明]
,[客户条码]
,[组织]) select * from Label1_ProductUniquePD20190923
set identity_insert Label1_ProductUniquePD off
[参考文档]
(https://blog.csdn.net/weixin_42702718/article/details/90769800)