我试过把datasouce中的dataset设为adoquery,但还是不行!

解决方案 »

  1.   

    你在那个单元中Uses了ADOQuery所在的单元了吗?这样是可以的!
      

  2.   

    哥们,datasource需要与adoquery连,datasource还需要与dbgrid连(dbgrid.datasource=datasource1),然后在adoquery中写好SQL语句后Open就OK了。
      

  3.   

    用把adoquery放在datamoduel上,datasource连到dbgrid
      

  4.   

    use 你的DATASOURCE & ADOQUERY所在FORM的单元就可以拉
      

  5.   

    自己重设一下 连接, dbgrid  -->datasource  -->adoquery  
      

  6.   

    连接的时候另一个窗口的DATASOURCE直接指定为你这个窗口的ADOQUERY就可以了
      

  7.   

    还有
    你的ADOQUERY所在窗口要是打开的(已创建)
      

  8.   

    form1中放了datasource1,adoconnection1,adoquery1,
    form2中放了dbgrid1,
    然后在form2中uses unit1,然后在dbgrid1.dataset设置为form1.datasource1,然后就会把adoqeury1查询出来的结果显示在form2的dbgrid1中了
      

  9.   

    我所有的引用,设置都完成了,代码如下:
    procedure Tchaxun.BitBtn1Click(Sender: TObject);
    begin
    form3.ADOConnection1.Connected:=true;
    if (edit1.Text<>'') or (edit2.Text<>'') then
    with form3.adoquery1 do
    begin
    close;
    sql.clear;
    if (edit1.text<>'') and (edit2.text='')then
    begin
    sql.add('select * from 信息表 where 姓名 like ''%'+trim(edit1.Text)+'%''');
    execsql;
    sql.clear;
    form3.DataSource1.DataSet.Active:=true;
    form3.visible:=true;
    end;
    end;
    end;
    运行的时候出现'missing sql property',到底哪出错了呢?
      

  10.   

    form3.ADOConnection1.Connected:=true;
    with form3.adoquery1 do
    begin
    close;
    sql.clear;
    sql.add('select * from 信息表 where 姓名 like ''%'+trim(edit1.Text)+'%''');
    execsql;
    end;
    form3.DataSource1.DataSet.Active:=true;//试一下,如果还不行,把你设置的贴出来看一下
      

  11.   

    ADOquery有没有连ADOconnection啊?
      

  12.   

    我把你的改了一下
    你的主要问题是把with adoquery do 放在了 if的下面
    这样的话 第二个 if语句就不是针对adoquery 的语句了
    uses unit3;
    procedure Tchaxun.BitBtn1Click(Sender: TObject);
    begin
    form3.ADOConnection1.Connected:=true;
    form3.adoquery1.connection:=ADOconnection;
    with form3.adoquery1 do
    begin
    if (edit1.Text<>'') or (edit2.Text<>'') then
    begin
    ........
    end;
    if (edit1.text<>'') and (edit2.text='')then
    begin
    close;
    sql.clear;
    sql.add('select * from 信息表 where 姓名 like ''%'+trim(edit1.Text)+'%''');
    execsql;
    open;
    end;
    end;