我有一段代码.错误提示[Error] Unit12.pas(99): Record, object or class type required
提示地点是结尾处的end;
procedure TForm12.Button1Click(Sender: TObject);
begin
if (edit1.Text='') or (edit2.Text='') or (edit3.Text='') or (edit4.Text='') or (edit5.Text='') or (edit6.Text='') or (edit7.Text='')
then
begin
showmessage('信息输入不全,请重新输入');
exit;
end
else
with unit2.DataModule2.ADOQuery1 do
begin
close;
with sql do
begin
sql.Clear;
sql.Add('select * from gdchez where cpid=:id');
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('id').Value:=edit1.Text;
open;
if unit2.DataModule2.ADOQuery1.RecordCount=0 then
begin
showmessage('无该用户,请重新输入');
exit;
end
else with with unit2.DataModule2.ADOQuery1 do
begin
unit2.DataModule2.ADOQuery1.Close;
with sql do
begin
sql.Clear;
sql.Add('update gdchez set cwid=:cw,czname=:name,phone=:dh,address=:dz,tcjw=:dj,ycfy=:ck where cpid=:id');
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('cw').Value:=edit2.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('name').Value:=edit3.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('dh').Value:=edit4.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('dz').Value:=edit7.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('dj').Value:=edit5.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('ck').Value:=edit6.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('id').Value:=edit1.Text;
end;
ExecSQL;
showmessage('修改成功');
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
exit;
end;提示错误
end;
end;
end;
提示地点是结尾处的end;
procedure TForm12.Button1Click(Sender: TObject);
begin
if (edit1.Text='') or (edit2.Text='') or (edit3.Text='') or (edit4.Text='') or (edit5.Text='') or (edit6.Text='') or (edit7.Text='')
then
begin
showmessage('信息输入不全,请重新输入');
exit;
end
else
with unit2.DataModule2.ADOQuery1 do
begin
close;
with sql do
begin
sql.Clear;
sql.Add('select * from gdchez where cpid=:id');
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('id').Value:=edit1.Text;
open;
if unit2.DataModule2.ADOQuery1.RecordCount=0 then
begin
showmessage('无该用户,请重新输入');
exit;
end
else with with unit2.DataModule2.ADOQuery1 do
begin
unit2.DataModule2.ADOQuery1.Close;
with sql do
begin
sql.Clear;
sql.Add('update gdchez set cwid=:cw,czname=:name,phone=:dh,address=:dz,tcjw=:dj,ycfy=:ck where cpid=:id');
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('cw').Value:=edit2.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('name').Value:=edit3.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('dh').Value:=edit4.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('dz').Value:=edit7.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('dj').Value:=edit5.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('ck').Value:=edit6.Text;
unit2.DataModule2.ADOQuery1.Parameters.ParamByName('id').Value:=edit1.Text;
end;
ExecSQL;
showmessage('修改成功');
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
exit;
end;提示错误
end;
end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货