我现在要编译的是一个保存按钮的代码,编译的时候都成功了,但是当录入信息之后点击保存的时候出现了如下错误信息“Project Project1.exe raised exception class EDatabaseError with message'ADOQueryLRCXCX:,Missing SQL property'. ”
希望大家能够帮我分析下啊,代码如下:
procedure TJCXXLR.BitBtn4Click(Sender: TObject);
var
aq:TADOQuery;
begin
aq:=TADOQuery.Create(self);
if edit2.Text='' then
begin
messagebox(handle,pchar('系列代码不能为空,请输入!'),'提示',mb_ok);
exit;
end;
if edit3.Text='' then
begin
messagebox(handle,pchar('系列名称不能为空,请输入!'),'提示',mb_ok);
exit;
end; with aq do
begin Connection:=DataModule1.ADOConnection1;
sql.Clear;
sql.Add('select CXDM,CXMC from CX where CXDM='''+trim(edIT2.Text)+'''');
open;
end;
if aq.RecordCount<>0 then
begin
messagebox(handle,pchar('车系代号重名或代码有重复,不能保存'),'提示',mb_ok);
exit;
end;
aq.Close;
aq.Free;
if ADOQueryLRCXCX.Active=false then ADOQueryLRCXCX.Open;
with ADOQueryLRCXCX do
begin
append;
fieldbyname('CXDM').AsString:=edit2.Text;
fieldbyname('CXMC').AsString:=edit3.Text; post;
end;
ADOQueryLRCXCX.SQL.Clear;
ADOQueryLRCXCX.SQL.Add('select * from CX where CXDM='''+trim(edit2.Text)+'''');
ADOQueryLRCXCX.Open;
end;end.
希望大家能够帮我分析下啊,代码如下:
procedure TJCXXLR.BitBtn4Click(Sender: TObject);
var
aq:TADOQuery;
begin
aq:=TADOQuery.Create(self);
if edit2.Text='' then
begin
messagebox(handle,pchar('系列代码不能为空,请输入!'),'提示',mb_ok);
exit;
end;
if edit3.Text='' then
begin
messagebox(handle,pchar('系列名称不能为空,请输入!'),'提示',mb_ok);
exit;
end; with aq do
begin Connection:=DataModule1.ADOConnection1;
sql.Clear;
sql.Add('select CXDM,CXMC from CX where CXDM='''+trim(edIT2.Text)+'''');
open;
end;
if aq.RecordCount<>0 then
begin
messagebox(handle,pchar('车系代号重名或代码有重复,不能保存'),'提示',mb_ok);
exit;
end;
aq.Close;
aq.Free;
if ADOQueryLRCXCX.Active=false then ADOQueryLRCXCX.Open;
with ADOQueryLRCXCX do
begin
append;
fieldbyname('CXDM').AsString:=edit2.Text;
fieldbyname('CXMC').AsString:=edit3.Text; post;
end;
ADOQueryLRCXCX.SQL.Clear;
ADOQueryLRCXCX.SQL.Add('select * from CX where CXDM='''+trim(edit2.Text)+'''');
ADOQueryLRCXCX.Open;
end;end.
if ADOQueryLRCXCX.Active=false then ADOQueryLRCXCX.Open;
with ADOQueryLRCXCX do
begin
append;
aq.Free;
ADOQueryLRCXCX.SQL.Clear;
ADOQueryLRCXCX.SQL.Add('select * from CX where 1=2');
if ADOQueryLRCXCX.Active=false then ADOQueryLRCXCX.Open;