每次选用修改功能时,都会出现以下错误 (adoquery1:commandtext does not return a result set)
选添加时就能正常啊,不明白啊,如何改procedure Tmodisf_form.Btn_okClick(Sender: TObject);
var sqlstr,sqlstr1,mph,bh,sfrq:string;
sf,df,qf,wgf,qtf:Double;
begin
mph:=Trim(mph_edit.Text);
if length(mph)<=0 then
begin
ShowMessage('门牌号吾能为空,请输入!');
mph_edit.SetFocus;
exit;
end;
bh:=Trim(bh_edit.Text);
sf:=strTofloat(sf_edit.Text);
df:=strToFloat(df_edit.Text);
qf:=strToFloat(qf_edit.Text);
wgf:=strToFloat(wgf_edit.Text);
qtf:=strToFloat(qtf_edit.Text);
sfrq:=Trim(dateTimeToStr(rq_dtp.DateTime)); if wgsf_form.modi then
sqlstr:='update sfb set (sf=:sf df=:df qf=:qf wgf=:wgf qtf=:qtf) where (bh='''+bh+''') and (mph='''+mph+''')'
else
begin
sqlstr:='insert into sfb (bh,mph,sf,df,qf,wgf,qtf,sfrq)values('''+bh+''','''+mph+''',';
sqlstr:=sqlstr+':sf,:df,:qf,:wgf,:qtf,'''+sfrq+''')';
sqlstr1:='select * from sfb where(mph='''+mph+''')and(bh='''+bh+''')';
end; try
with adoquery1 do
begin
close;
sql.Clear;
sql.Add(sqlstr1);
open ;
if recordCount>0 then
begin
showMessage('门牌号有重复,请输入!');
mph_edit.SetFocus;
exit;
end; sql.Clear;
sql.Add(sqlstr);
Parameters.ParamByName('sf').Value:=sf;
Parameters.ParamByName('df').Value:=df;
Parameters.ParamByName('qf').Value:=qf;
Parameters.ParamByName('wgf').Value:=wgf;
Parameters.ParamByName('qtf').Value:=qtf;
ExecSQL;
end;
except
messageDlg('系统操作失败!',mtError,[mbOk],0);
end;
选添加时就能正常啊,不明白啊,如何改procedure Tmodisf_form.Btn_okClick(Sender: TObject);
var sqlstr,sqlstr1,mph,bh,sfrq:string;
sf,df,qf,wgf,qtf:Double;
begin
mph:=Trim(mph_edit.Text);
if length(mph)<=0 then
begin
ShowMessage('门牌号吾能为空,请输入!');
mph_edit.SetFocus;
exit;
end;
bh:=Trim(bh_edit.Text);
sf:=strTofloat(sf_edit.Text);
df:=strToFloat(df_edit.Text);
qf:=strToFloat(qf_edit.Text);
wgf:=strToFloat(wgf_edit.Text);
qtf:=strToFloat(qtf_edit.Text);
sfrq:=Trim(dateTimeToStr(rq_dtp.DateTime)); if wgsf_form.modi then
sqlstr:='update sfb set (sf=:sf df=:df qf=:qf wgf=:wgf qtf=:qtf) where (bh='''+bh+''') and (mph='''+mph+''')'
else
begin
sqlstr:='insert into sfb (bh,mph,sf,df,qf,wgf,qtf,sfrq)values('''+bh+''','''+mph+''',';
sqlstr:=sqlstr+':sf,:df,:qf,:wgf,:qtf,'''+sfrq+''')';
sqlstr1:='select * from sfb where(mph='''+mph+''')and(bh='''+bh+''')';
end; try
with adoquery1 do
begin
close;
sql.Clear;
sql.Add(sqlstr1);
open ;
if recordCount>0 then
begin
showMessage('门牌号有重复,请输入!');
mph_edit.SetFocus;
exit;
end; sql.Clear;
sql.Add(sqlstr);
Parameters.ParamByName('sf').Value:=sf;
Parameters.ParamByName('df').Value:=df;
Parameters.ParamByName('qf').Value:=qf;
Parameters.ParamByName('wgf').Value:=wgf;
Parameters.ParamByName('qtf').Value:=qtf;
ExecSQL;
end;
except
messageDlg('系统操作失败!',mtError,[mbOk],0);
end;
insert,update,delete 语句用adoquery1.ExecSQL