运行程序的时候出现了missing SQL property 错误的时候是什么原因啊

解决方案 »

  1.   

    sql语句问题?,不太确定,把代码贴出来
      

  2.   

    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.
      

  3.   

    按照这样的操作序列整理下程序代码
    with adoquery do
    begin 
      close;
      sql.clear;
      sql.add();
      open/execsql;
    end感觉是 query 没close的原因,楼主跟踪调试看看。
      

  4.   

     ADOQueryLRCXCX.Open前 ADOQueryLRCXCX中有无SQL脚本?
    估计这有问题
      

  5.   

    感觉是以下这里出问题!
    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; 
    你可以试试在post以后close ADOQueryLRCXCX ,然后再Add SQL语句