我只测试过内存使用的问题.
原生ADO:100个_Connection,100个_Recordset并打开数据表占11.5mb内存.
创建及解释对象对ADODB快一倍左右,或者更快.ADODB:100个Connection,100个TADODataSet并打开数据表占22.5mb内存.
TADODataSet里面有3到4个_Recordset对象,可能性就是吃内存及速度慢在这里罢!ADODB为什么不把_Connection,_Recordset简单封装? 它还有什么特性?与原生的ADO有那些改进?
谁能解释一下.

解决方案 »

  1.   

    封装带来方便的同时,也降低了效率,原生ADO用起来比Borland的ADO对象要麻烦,Borland通过封装使用户使用更方便。但同时Borland也允许使用原生ADO对象,具体要用哪一个就要看你自己的选择了。
      

  2.   

    原生ADO使用起来并不见得比封装麻烦。
    有位朋友说封装主要是为了实现控件邦定我倒觉得有点道理。
      

  3.   

    封装本来就是为了方便用户。为了方便操作和以后的扩展,经过封装的控件往往添加了许多东东并不是用户能同时用到
    的。这样,就扩大了它所占的内存。同样,为了以后扩展,必须考虑类的继承和各种消息的处理;这样就降低速度。为什么VC的程序比D的程序要小要快,主要原因就在这里。如果要考虑到速度与内存的占用。最好采用原生方法。
    如果对时间的要求很高,嘿嘿..就考虑用放开D用VC吧
      

  4.   

    封装之后,有了符合符合VCL的数据集格式,可以直接和VCL的数据感知控件绑定
      

  5.   

    封装以后的ADO在使用的时候更像是BDE,通过对原生接口的重新封装在很大程度上不用关心ADO的接口问题,只要想用BDE组件一样使用就行了,再者,原生对象无法和Delphi自身的数据感知组件协同工作,所以封装是有必要的,对于使用Delphi又需要ADO做开发的情况非常适用。个人的一点拙见,大家多发言,共同学习!
      

  6.   

    原生的ado对象如果你要做以个浏览的功能就需要写上千行代码!但是封装了就不用写都可以!封装的ado对象做出的程序比原生的要节省资源!占用内存比较少!封装的方便