初学DELPHI,搞不清楚connection,command,dataset,adotable,adoquery之间的关系,也不知道怎么用,希望大家给讲解一下!
举个例子来说吧,我想在ListView中显示这条语句(select a.n_id,a.n_name,b.china,b.maths,b.english from class_info a,class_chj b where a.n_id=b.n_id)查询出来的信息,该怎么办?

解决方案 »

  1.   

    你想一口气吃成一个胖子
    建议看些基础的书先
    有些问题可以在csdn上搜
      

  2.   

    各位只要跟我说一下如何将数据加到ListView中去就行了!
      

  3.   

    因为DBGrid还有一个DataSource可以设置,ListView没有怎么加数据?
      

  4.   

    你问的那几个控件不是加LISTVIEW的关键,这和数据库没什么关系,如果你会以LISTVIEW上加一个节点,就会加另一个,然后才是如何获得数据,在获得数据后,一个循环+一个判断就可以完成你所要的效果了,~~
    connection就是一个管子,可以把数据源里的水(数据)接引到你的工程中去,adotable就是一个具体用水的东西了,你如果是要喝这个水的我个adotable就相当于荼具,把水放到你面前,随便你怎么用,还有一个控件你没提到,就是DataSource,这个控件就是你在把水用connection引到你的工程里后具体用时的又一个管子了,这个管子可以把你指定的一个容器里的水导到你用的地方~~随时想的比喻,也许很糟吧~~呵呵
      

  5.   

    感谢楼上,其实我问的也就是你说的那个循环和判断,我以前用c#写,现在用delphi,对语法不熟悉,加入我的connection,datasource和adotable都配置好了,我现在就想用,比如说:
    procedure TForm1.FormCreate(Sender: TObject);
    var  newitem:tlistitem;
    begin newitem:=tlistitem.Create(listView1.Items);
     newitem:=listView1.Items.Add;
     newitem.Caption:=?
    end;现在的这个newitem.Caption怎么赋值?
      

  6.   

    hoho,shitianj(仲)说得还挺确切的,connection是从水厂连到你家的管子,DataSet,Query等是你家里储水用的缸啊瓮什么的,DataSource可以作为另外一个小管子,让缸里瓮里的水再流向本该装水的水瓶、水杯等等,而DBGrid这类东西就是水瓶。至于ListView,它本来不是专门用来装水的,如果你想让它起这个作用就要先了解如果让它作水容器该怎么办(比如怎么添加一个行进去)。然后就是:把缸里的水用你自己的方法放到里面去。我说得好像更糟了、、
      

  7.   

    如果不用数据感知组件的话,也可以不用DataSource,如下面:
    NewItem.Caption:=adoTable.FieldByName('aField').AsString;
    如果坚持用DataSource,就如下面
    NewItem.Caption:=dataSource.DataSet.FieldByName('aField').AsString;
    这样倒是可以保证如果数据集更换的话不必改写代码,只要改变DataSource的属性即可同从前一样工作你可以参考一下TDataSet的帮助
      

  8.   

    数据感知、数据敏感、DataAware组件:类似于DBGrid的、位于DataControl组件板中(或其它三方控件的)的、可将自身动作直接和数据集的数据显示、修改相关联的组件。利用这类组件可以获得一些“自动”操作数据集数据的功能。
    但一般情况下还是不要去用,因为控制起来不算灵活,宁可去写代码填充一个Edit,也不愿将一个DBEdit连接到DataSource
      

  9.   

    或者这么说吧,有DataSource属性的组件,你都可以认为它是数据感知的