关于adoquery执行sql语句的问题(急、急、急!)(100分)

  • 主题发起人 主题发起人 TADpOLE
  • 开始时间 开始时间
T

TADpOLE

Unregistered / Unconfirmed
GUEST, unregistred user!
现在我有两张表:by09,by09_tmp(下面简称a,b),b表除了比a表少了一些字段以外,什么
都跟a表相同!现有意下语句:
tmp:='insert into by09zyfymx(sxh,pcno,zyh,blh,sfsj,sfdlbm,sfxmbm,grbm,'+
'yybm,fyze,sl,sjjg,cd,gg,yfyl,sfy,ksmc,ysxm,sfxmmc,zflb,xh,sjzt, '+
'bz) select * from by09zyfymx_tmp where bz=''1''';
adoquery1.Close;
adoquery1.SQL.Text:=tmp;
adoquery1.ExecSQL;
在执行的时候报错如下:sql命令为正常结束。不知道原因何在啊!
请高手指点!谢谢先!
 
query.close;
query.sql.clear;
query.sql.add(tmp);
query.execsql.

-------
Please try again.
 
你没有清楚以前的怎么可以?
 

tmp:='insert into by09zyfymx(sxh,pcno,zyh,blh,sfsj,sfdlbm,sfxmbm,grbm,'+
'yybm,fyze,sl,sjjg,cd,gg,yfyl,sfy,ksmc,ysxm,sfxmmc,zflb,xh,sjzt, '+
'bz) select * from by09zyfymx_tmp where bz=''1''';
adoquery1.Close;
adoquery1.sql.clear;
adoquery1.SQL.Text:=tmp;
adoquery1.ExecSQL;
 
都说,招做吧,
 
tmp:='insert into by09zyfymx(sxh,pcno,zyh,blh,sfsj,sfdlbm,sfxmbm,grbm,'+
'yybm,fyze,sl,sjjg,cd,gg,yfyl,sfy,ksmc,ysxm,sfxmmc,zflb,xh,sjzt, '+
'bz) select sxh,pcno,zyh,blh,sfsj,sfdlbm,sfxmbm,grbm,'+
'yybm,fyze,sl,sjjg,cd,gg,yfyl,sfy,ksmc,ysxm,sfxmmc,zflb,xh,sjzt, '+
'bz from by09zyfymx_tmp where bz=''1''';
adoquery1.Close;
adoquery1.Clear;
adoquery1.SQL.Add(tmp);
adoquery1.ExecSQL;
 
总结: insert int ...select 语句中,select 部分不能用*,insert 什么就select 什么,字段名(别名)要一至
 
最后没有办法了,我只有将这两个sql分开来了!虽然有点麻烦,但是已经搞定了!
谢谢各位的支持!
 
后退
顶部