初学delphi数据库编程,几个概念不能理解,虔诚地请教各位:
1.什么是dateset和datesource
2.dateset和datesource之间什么关系.
3.它们都有哪些常用方法,一般如何使用?
谢谢了

解决方案 »

  1.   

    DataSet就是数据集,保存从数据库中查询到的结果
    DataSource,数据源,是数据集跟数据显示控件之间的连接渠道。
    哪些方法,看帮助就明白了。
      

  2.   

    补充一个问题:
    哪些东西可作为 dateset?
    哪些可作为datesource?
      

  3.   

    另外楼主的dataset 和 datasource 都写成 dateset 和 datesource了
      

  4.   


    Table AdoTable.........................DataSource
      

  5.   

    DataSource是DataSet和数据敏感控件的中介者;DataSet是被观察者,数据敏感控件是观察者。DELPHI利用这套机制来解决数据集和数据敏感控件之间一对多的相互设值问题。
      

  6.   

    一般的我们把DataSet叫数据集组件,把DataSource叫数据感知组件.
    Delphi中数据集组件有很多,根据连接方式的不同(ADO,BDE,DBExpress等)有很多组件,比如TQuery,TTable,TADOTable,TADOQuery等,他们都是从TDataSet继承而来,都是做数据库操作用到的,
    只是连接方式不同,作用的不同作了不同的封装实现。对于一个有返回结果集的操作而言(最简单的就是一个select语句),
    你需要与数据库接口(驱动)做交互告诉他要做什么,返回什么.这些操作都在组件里封装.
    很多时候我们需要把结果显示在界面上,当然你可以自己把查询到的结果一个个画到界面上,但delphi提供了更方面的方法,
    利用TDataSource组件和DBControl组件(DBGrid,DBEdit等).
    当数据集组件发生一些事件(比如操作了数据更新,增加了记录,删除了记录等),它可以同过绑定的TDataSource组件(delphi里只有这一个数据感知组件),通知与其连接的DBControl来它们重新更新要显示的数据(重画).
    这样用户就能写更少的代码来完成一个数据应用的开发.
      

  7.   

    谢谢楼上fenger8293 和Harryfin
     
    根据你们说的已经有点理解了:比如一个DBGrid 通过 DataSource 显示 DataSource的DataSet(可以是一个TADOAuery控件).但是作为DataSet的ADOQuery 本身又有DataSource属性,这就产生了一种循环,请问这种循环怎么理解呢?
      

  8.   

    ADOQuery的DataSource可以指向另一个数据集