这是我做的前期的一些工作:
现有MSSQL2000 已创建数据库jinze  内有一张customer表 表中有两列CUSID和CUSNAME 
加了一个ADOCONNECTION组件 其connectionstring 参照到上述的customer表 
还加了一个ADOQUERY 组件 connection设为ADOCONNECTION1  SQL设为:"select * from customer". 
下一步我该如何操作才能在这个窗口上直接看到我所查询出来的数据呢?
问题解决了 是我自己学艺不精 
贴一下我是怎么解决的吧 大家不要笑话我啊 窗口显示customer表信息 
一个adoconnection  connection---SQLSERVER数据源 
一个adoquery  connection---adoconnection1 
              Sql---select * from customer 
              Active-true 
一个datasource  dataset---adoquery1 
一个dbgrid  datasource---datasource1 
这样就能在这个窗口中直接看到表中的数据 
现在的问题是如何双击其中的一条记录 能调出相应的明细记录?这个过程如何实现?

解决方案 »

  1.   

    procedure Tbafm.DBGrid1DblClick(Sender: TObject);
    begin
        with adoquery1 do 
         adoquery1.close;
         adoquery1.sql.clear;
         adoquery1.sql.add('select * from 明细表 where 明细表.cusid='''+datasource1.dataset.filedbyname('cusid').asstring+'''' );
         adoquery1.open;
         dbgrid1.datasource.dataset:=adoquery1;
    end;
      

  2.   

    查看明细方法
    1.弹出界面上放置ADOQuery,DataSource,DBGrid(参考一楼)
    ADOQuery.sql.clear; 
    ADOQuery.SQL.Text := 'select * from 明细表 where 明细表.cusid='+IntToStr(ID);//这个ID是你双击记录的CustID 
    ADOQuery.open; 
    DataSource的DataSet为ADOQuery,DBGrid的DataSource为界面的DataSource2.主从表关系
    再添加一个ADOQuery,DataSource,DBGrid,来显示从表,从表的ADOQuery的DataSource设置为主表的DataSource,然后从表ADOQuery的SQL语句如下
    'select * from 明细表 where 明细表.cusid=:CustID',这样主表切换记录时,从表DBGrid会自动显示匹配主表CUSTID的记录
      

  3.   


    procedure TWKO_PLAN_DAY_F.cxGrid1DBTableView1CellDblClick(
      Sender: TcxCustomGridTableView;
      ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
      AShift: TShiftState; var AHandled: Boolean);
    begin
      inherited;
      try
        WKO_SHOW_MAG_F:=TWKO_SHOW_MAG_F.Create(Self);
        WKO_SHOW_MAG_F.Show;
        WKO_SHOW_MAG_F.Update;
        WKO_SHOW_MAG_F.Edit1.Text:=adoq_searchpmc.fieldbyname('PMC_WO').AsString;
        WKO_SHOW_MAG_F.Edit2.Text:=adoq_searchpmc.fieldbyname('PMC_PN').AsString;
        WKO_SHOW_MAG_F.Edit3.Text:=adoq_searchpmc.fieldbyname('PMC_RQ').AsString;
        WKO_SHOW_MAG_F.Edit4.Text:=adoq_searchpmc.fieldbyname('CBZX').AsString;
        WKO_SHOW_MAG_F.Edit5.text:=adoq_searchpmc.fieldbyname('PMC_CB').AsString;
        WKO_SHOW_MAG_F.Edit6.text:=adoq_searchpmc.fieldbyname('PMC_KB').AsString;
        WKO_SHOW_MAG_F.Edit7.text:=adoq_searchpmc.fieldbyname('PMC_XB').AsString;
        WKO_SHOW_MAG_F.Edit8.text:=adoq_searchpmc.fieldbyname('PMC_BC').AsString;
        WKO_SHOW_MAG_F.Edit9.Text:=adoq_searchpmc.fieldbyname('PMC_QTY').AsString;
        WKO_SHOW_MAG_F.Edit10.Text:=adoq_searchpmc.fieldbyname('PMC_MODEL').AsString;
        WKO_SHOW_MAG_F.Edit11.Text:=adoq_searchpmc.fieldbyname('SUMBZHS').AsString;
        WKO_SHOW_MAG_F.Edit12.Text:=adoq_searchpmc.fieldbyname('WKO_PLANNER').AsString;
        WKO_SHOW_MAG_F.Edit13.text:=adoq_searchpmc.fieldbyname('PMC_GX').AsString;
        WKO_SHOW_MAG_F.Edit14.text:=adoq_searchpmc.fieldbyname('PMC_TYPE').AsString;
        WKO_SHOW_MAG_F.Edit15.text:=adoq_searchpmc.fieldbyname('PMC_BZRS').AsString;
        WKO_SHOW_MAG_F.Edit16.text:=adoq_searchpmc.fieldbyname('ACCOUNT_ID').AsString;
        WKO_SHOW_MAG_F.Edit17.Text:=adoq_searchpmc.fieldbyname('PMC_J5').AsString;
        WKO_SHOW_MAG_F.Edit18.Text:=adoq_searchpmc.fieldbyname('PMC_J6').AsString;
        WKO_SHOW_MAG_F.Edit19.Text:=adoq_searchpmc.fieldbyname('PMC_Y7').AsString;
        WKO_SHOW_MAG_F.Edit20.Text:=adoq_searchpmc.fieldbyname('PMC_Y8').AsString;
        WKO_SHOW_MAG_F.Edit21.Text:=adoq_searchpmc.fieldbyname('PMC_Y9').AsString;
        WKO_SHOW_MAG_F.Edit22.Text:=adoq_searchpmc.fieldbyname('PMC_Y10').AsString;
        WKO_SHOW_MAG_F.Edit23.Text:=adoq_searchpmc.fieldbyname('PMC_Y11').AsString;
        WKO_SHOW_MAG_F.Edit24.Text:=adoq_searchpmc.fieldbyname('PMC_Y12').AsString;
        WKO_SHOW_MAG_F.Edit25.Text:=adoq_searchpmc.fieldbyname('PMC_B1').AsString;
        WKO_SHOW_MAG_F.Edit26.Text:=adoq_searchpmc.fieldbyname('PMC_B2').AsString;
        WKO_SHOW_MAG_F.Edit27.Text:=adoq_searchpmc.fieldbyname('PMC_B3').AsString;
        WKO_SHOW_MAG_F.Edit28.Text:=adoq_searchpmc.fieldbyname('PMC_B4').AsString;
        WKO_SHOW_MAG_F.Edit29.Text:=adoq_searchpmc.fieldbyname('SONO').AsString;
        WKO_SHOW_MAG_F.Edit30.Text:=adoq_searchpmc.fieldbyname('REMARK').AsString;
      finally
      end;
    end;
      

  4.   

    新增一个界面,将对应的select明细显示;或者,使用明细表。