为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 8
【操作系统】:win11
【CPU】: intel
【问题描述】*:
创建一张表的复制表后,使用表复制语句复制所有原表数据到复制表报错。
仅当指定列列表,且SET IDENTITY_INSERT为ON时,才能对自增列赋值
但如果是单独insert 一条记录 或者使用
insert into table1(c1,c2) select c1,c2 from table2
这种语法就能成功插值
以下是报错sql
SET IDENTITY_INSERT "base"."t_banner_config_copy" ON;
INSERT INTO "base"."t_banner_config_copy"
SELECT * FROM "base"."t_banner_config";
要对自增列赋值,需要指定列列表;insert select结构里面,就是要形如:
set identity_insert t1_bak on;
insert into t1_bak(col1,col2) select col1,col2 from t1;
commit;
建议使用管理工具,右键表,可以生成select、insert的sql,拼接成insert select语句。