查询已经建好了需要输入查询值的那种。怎么将窗体上EDIT中输入的查询值传给ACCESS里的查询?怎样让查询结果和DBGRID建立联系,并在DBGRID里显示结果?

解决方案 »

  1.   

    控件datasource1.dataset:=你的表;
        dbgrid.datasource:=datasource1;
    表的active:=true;就可以显示了
      

  2.   

    ADOCommand是用作没有返回值的查询
    如果需要返回值可以使用ADOQuery或ADODataSet,如何绑定楼上说了
      

  3.   


        ADODataSet1.Connection := cnnA;
        ADODataSet1.CommandType := cmdText;
        ADODataSet1.CommandText := 'select * from tb_temp';
        ADODataSet1.Open;
        DataSource1.DataSet := ADODataSet1;
      

  4.   

    ADOQuery1.Close;
        ADOQuery1.Connection := cnnA;
        ADOQuery1.SQL.Text := 'select * from tb_send';
        ADOQuery1.Open;
        DataSource1.DataSet := ADOQuery1;
      

  5.   

    可我的查询是要输入查询参数的那种比如查询姓名,就要输入一个姓名才行。ADOTABLE的TABLENAME列表里是不会显示查询表名的啊。
      

  6.   

    var
      mysql: string;
    begin  
      mysql:='select '''+edit1.text+''' from yourtable';
      ADOQuery1.SQL.Clear;
      ADOQuery1.SQL.Add(mysql);
      ADOQuery1.Active := true;
    end;
      

  7.   

    1.
        ADODataSet1.Connection := cnnA;
        ADODataSet1.CommandType := cmdText;
        ADODataSet1.CommandText := 'select * from tb_temp';
        ADODataSet1.Open;
        DataSource1.DataSet := ADODataSet1;
    2.
        dbgrid.datasource:=datasource1;3.ok!
      

  8.   

    var
      mysql: string;
    begin  
      mysql:='select '''+edit1.text+''' from yourtable';
      ADOQuery1.SQL.Clear;
      ADOQuery1.SQL.Add(mysql);
      ADOQuery1.Active := true;
    end;