求解adoquery2.SQL.Text中的SQL太长怎么办?
if adoquery2.Active then adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Text:= 'insert into accession (kehunum,xianwei,kehu,company,carman,drivername,hgnum,cncarnum,dunwei,kunbangkouan,hkcarnum,ie,tyqdh,hwzzl,hujs,qdh,price,tel,flag,fax,inputid,cyd,mdd,danjufeishu,jzxnum1) values( ' ' '+ '2099 '+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'xianwei ').asstring+ ' ' ', ' ' '+ '短信报单 '+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'company ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'carman ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'drivername ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'hgnum ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'cncarnum ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'dunwei ').asstring+ ' ' ', ' ' '+kouan+ ' ' ', ' ' '+upmsg[0]+ ' ' ', ' ' '+ie+ ' ' ', ' ' '+upmsg[2]+ ' ' ', ' ' '+upmsg[5]+ ' ' ', ' ' '+upmsg[4]+ ' ' ', ' ' '+upmsg[1]+ ' ' ',convert(float, ' ' '+trim(temp4.Text)+ ' ' ',0), ' ' '+ADOQuery1.fieldbyname( 'tel ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'flag ').asstring+ ' ' ', ' ' '+ADOQuery1.fieldbyname( 'fax ').asstring+ ' ' ', ' ' '+ '短信报单 '+ ' ' ', ' ' '+kouan+ ' ' ', ' ' '+mudidi+ ' ' ',convert(int, ' ' '+trim(temp3.Text)+ ' ' ',0)) ';
adoquery2.ExecSQL;
我用的是delphi7.0“adoquery2.SQL.Text”中的SQL太长了怎么样办?
[解决办法]
可以成存程,然後用存程
[解决办法]
可以用sql.add( ' '),也可以定义一个StringList;
[解决办法]
支持二楼
[解决办法]
二楼或:
adoquery2.SQL.Clear;
adoquery2.SQL.Text:= 'insert into '+
'accession (kehunum,xianwei,kehu,company,carman, '+
'drivername,hgnum,cncarnum,dunwei,kunbangkouan,hkcarnum '+
...
...
...
' ' ' '+kouan+ ' ' ', ' ' '+mudidi+ ' ' ',convert(int, ' ' '+trim(temp3.Text)+ ' ' ',0)) ';
adoquery2.ExecSQL;
[解决办法]
可以写成存储过程、函数或 Sql.Add()都可以
[解决办法]
晕,这样的代码,如果是用在项目中,以后来维护你的代码的人,会崩溃的.