概述
ADO与ADO.NET是两种数据访问方式。ADO.NET使用离线方式,在访问数据的时候,ADO.NET会利用XML制作数据的一份副本,ADO.NET的数据库连接也只有在这段时间需要在线。而ADO使用COM技术,这就要求所使用的数据类型必须符合COM规范,而ADO.NET基于XML格式,数据类型更为丰富并且不需要再做COM编排导致的数据类型转换,从而提高了整体性能。
架构图表
细节比较
ADO |
ADO.NET |
数据以Recordset的形式存储 |
数据以Dataset的形式存储 |
Recordset中的数据来自多个 表,集中显示在一个表中 |
Dataset将其中的每个表存 储为一个datatable对象的单独实体 |
在表中进行顺序处理 |
控制权可以从表的一行转到另一行 |
便于提供对数据库的连接访问 |
提供对数据库的断续访问 |
数据类型必须先被转换为COM 数据类型,然后才能在层或组件 之间传输 |
Dataset以XML格式进行传输 |
总结
ADO.NET为.NET构架提供了优化的数据访问模型,和基于COM的ADO是完全两样的数据访问方式。也正因为ADO.NET基于XML格式,数据类型更为丰富并且不需要再做COM编排导致的数据类型转换,从而提高了整体性能。