表内容复制出现问题
A表
- SQL code
create table CkQD (Id int auto_increment not null, constraint Id_pr primary key(Id), Pn varchar(30), Gz varchar(20), Sl bigint, Jz decimal(10,2), Dw varchar(10), Ckt datetime, Jlr varchar(20), chr varchar(20), Bz varchar(100))
欢迎大家阅读《表内容复制出现有关问题》,跪求各位点评,by 搞代码
B表
- SQL code
create table Ck (Id int auto_increment not null, constraint Id_pr primary key(Id), Pn varchar(30), Gz varchar(20), Sl bigint, Jz decimal(10,2), Dw varchar(10), Ckt datetime, Jlr varchar(20), chr varchar(20), Bz varchar(100))
现在我要把每次A表内容插入B表,但是B表的ID列必须用自动生成的,不能插入A表的进来,我的语句出现问题不能执行
- SQL code
insert into ck(ck.id(default),(select ckqd.Pn,ckqd.Gz,ckqd.Sl,ckqd.Jz,ckqd.Dw,ckqd.Ckt,ckqd.Jlr,ckqd.chr,ckqd.Bz from ckqd,rk where ckqd.Pn = rk.Pn and ckqd.Sl <= rk.Sl));
求解决方法
——解决方案——————–
insert into ck(Pn , Gz , Sl , Jz, Dw , Ckt , Jlr , chr , Bz )
select ckqd.Pn,ckqd.Gz,ckqd.Sl,ckqd.Jz,ckqd.Dw,ckqd.Ckt,ckqd.Jlr,ckqd.chr,ckqd.Bz from ckqd,rk where ckqd.Pn = rk.Pn and ckqd.Sl <= rk.Sl;
——解决方案——————–
select Sl into v_Rk_Sl from Rk where Pn = v_CkQD_Pn;
检查结果是否有多条
——解决方案——————–
开启事务后,出错就会回滚了。
——解决方案——————–
——解决方案——————–