本人没有系统的学习过程序设计,自然也不知道相近的各个控件之间,哪个可能更适合我的程序,或是适合于这个“场合”。 
前两天发现“ADOTable”没法打开MDB里的T_Field表,而ADOQuery又可以,他们可以说非常的接近,甚至可以说能相互代替,我还想直接就用ADODataSet代替他们算了。 
这让我蒙生了,进一步了解DB编程时最常用的、应用最广的这些ADODB控件各自特点的想法。 
他们分别是:TADOConnection,TADOCommand,TADODataSet,TADOTable,TADOQuery,TADOStoredProc,TRDSConnection。 不知道他们各自有什么特点? 
更加适合在哪些情况出现? 其实,了解这些,很多人关心的哪个消耗资源最少就也应该可以出现了。

解决方案 »

  1.   

    Delphi的TADODateSet控件封装了
    ADO组件中的Connection,RecordSet,Command对象。
    TADOTable和TADOQuery是TADODateSet的特殊形式,
    是为了照顾BDE程序员的习惯。
    占用资源都差不多,用哪个控件看个人喜好,我比较喜欢用TADOQuery
      

  2.   

    偶通常只用三个:TADOConnection,TADOQuery,TADOStoredProc。
    因为个人认为adoquery功能相当强大,可以接收数据集(带参数带返回值的所有东东),可以执行SQL语句,存储过程,自定义函数,以前还用过用TADOCommand,不过对它没什么感觉。TADOStoredProc执行存储过程可能效率更高一点吧。
      

  3.   

    TADOConnection ADO连接用
    TADOCommand 执行SQL用(非Select语句)
    TADODataSet 可以代替ADOTable,支持Select的SQL语句
    TADOTable 最基本的表
    TADOQuery 最全面,支持全部SQL语句,对于Select和非Select的使用方法有点不同
    TADOStoredProc 存储过程调用
      

  4.   

    ly_liuyang(Liu Yang)  把功能说得最明白,但没有指出对资源占用和效率方面的比较,希望继续,洗耳恭听  嘻嘻TADOConnection ADO连接用
    TADOCommand 执行SQL用(非Select语句)
    TADODataSet 可以代替ADOTable,支持Select的SQL语句
    TADOTable 最基本的表
    TADOQuery 最全面,支持全部SQL语句,对于Select和非Select的使用方法有点不同
    TADOStoredProc 存储过程调用
      

  5.   

    to ouyongke (只吃源代码的Mouse) 
     你想知道这些控件的使用和特点,最好去买本书看就可以了,书上写得更清楚0!给你推荐一本书,《最新DELPHI数据库开发指南》
    里面讲得很清楚的
    TADOConnection ADO连接用
    TADOCommand 执行SQL用(非Select语句)
    TADODataSet 可以代替ADOTable和TADOQuery,可以多表查询等,支持Select的SQL语句
    TADOTable 最基本的表
    TADOQuery 最全面,支持全部SQL语句,对于Select和非Select的使用方法有点不同
    TADOStoredProc 存储过程调用
      

  6.   

    楼主基础太薄,
    建议看看《Delphi开发人员指南》,
    里面对这些控件解释的很清楚。
      

  7.   

    TADOConnection 该组件用于建立数据库的连接,ADO 的数据源组件和命令组件可以通过该连接组件运行命令及从数据库中提取数据等。
       TADODataSet 这是ADO 提取及操作数据库数据的主要数据集,在BDE 中没有对应的组件该组件可以从一个或多个基表中提取数据。
       TADOTable 主要用于操作和提取单个基表的数据,与TADODataSet 类似,它可以直接连接到数据库也可以通过TADOConnection 组件连接到数据库。
       TADOQuery 该组件是通过SQL 语句实现对数据库数据的提取及操作。它可以直接运行数据定义语言(DDL), 比如CREATE、 ALTER、 DROP 等SQL 命令。其连接方式与前两种一样。
       TADOStoredProc 该数据集是专门用于运行数据库中的存储过程的。这些存储过程可能会提取数据,也可能不会提取数据。
       TADOCommand 该组件用于运行一些SQL 命令,这些命令没有数据集返回。所以该组件不是一个数据集组件。该组件可以与支持数据集的组件一起使用也可直接从一个基表中提取数据集。
       RDSConnection 一个进程或一台计算机传递到另一个进程或计算机的数据集合。利用ADO 访问数据的一般进程为首先向应用程序添加一个ADOConnection 组件用于建立与数据库的连接,然后使用一个ADOConnection 组件或者ADOQuery 组件向数据库执行SQL 命令,最后通过数据集获得数据。这时数据集组件必须将Connection 属性指向所使用的ADO Connection 组件。////////////////////////////////////////////////////////////
    呵呵,不好意思,刚好看书看到这里,摘录了下来。