进来看此贴的朋友好:
    我有一个问题,想请教一个CSDN里的高手,我们单位现正在使用一个管理软件
,数据库是SQL SERVER2000,我想用DELPHI做一个应用程序,具体的功能是:在数据库
中各个表中间选取几个表,而且这几个表每两个表之间都有相同的字段,但是这些表中
的字段我不并都需要,只需要其中的几个有用的字段,这些有用的字段分布在这几个表
中,通过这个应用程序将这几个表联接起来并提取那些关心的字段,组成一张表,这张
表能够在应用程序的界面上显示出来,该程序还要提供打印功能,将此表能够打印出来。
而且最好是可以重复作用,只要打开此程序,点相应的按钮即自动在已更新数据的各个
表中将数据提取出来。
    麻烦进来的朋友,如果你会的话,能够帮小弟的忙,不胜感谢。如果您很忙的话,
也可以给我点思路,或将关键的部份给小弟讲讲,如有这方面的资料可以话可以给发点
吗?谢谢,电邮:[email protected]
   此致
                                           盼您的回音
                                              xhhll

解决方案 »

  1.   

    1, 首先在程序中放个DBGrid控件,用来显示数据!
    2,执行操作,提取数据
    3,返回数据到界面!这是主要思路!
      

  2.   

    具体实现过程:
    比如数据库中有table1(a1,a2,a3),table2(b1,b2,b3),table3(c1,c2,c2),其中table1、table2等为表名,c1、c2等为字段名在界面上放一个ADOQuery组件,然后把connectionstring连接到你的数据库
    现在就可以进行操作了
    with ADOQuery1 do
    begin
      sql.close;
      sql.clear;
      sql.add('select [table1].a1,[table2].b1,[table2].b2,[table3].c3 from          
      table1,table2,table3');//这里就可以选你想要的字段了,格式就这样
      open;
    end;然后显示到DBGrid中,再在界面上放个DataSource
    写如下代码:
    Self.DataSource1.DataSet := ADOQuery1;
    Self.DBGrid1.DataSource := Self.DataSource1;这样就可以了
      

  3.   

    同意伟哥的:         还有  楼主,你这个问题,学过JOIN IN On、Where 表联表的都知道。很简单的,看一看SQL SERVER方面的书
      

  4.   

    to 伟哥:
    如果两张数据表中有相同的字段,而我想用两个dbedit分别对它们绑定时该怎么做
    举例说
    select s.stuID,s.stuName,s.sex,s.political,s.Nation,
    s.NP,s.Post,s.Address,s.Phonenumber,s.enrolled,s.class,
    sx.stuid,sx.family,sx.resume,sx.x
    from stuinf s,stuinfx sx
    where s.stuid=sx.stuid
    这是我写在adoquery中的sql语句,然后我用以下语句对它绑定dbtxtID.DataField:='s.StuID';
    dbtxtIDx.DataField:='sx.StuID';
    结果是出现异常,提醒我找不到s.stuid和sx.StuID
    若改成
    dbtxtID.DataField:='StuID';
    能够找到
    但只能绑定stuinf表中的stuID,而不能绑定stuinfx表中stuID
    该怎样解决
    先谢过
      

  5.   

    to all:
    知道者可在我开的贴子"关于数据绑定的一个小问题"中回答
    有分