ADO.NET是ADO的改进版,其中ADO.NET更好的支持了数据访问和数据处理分离的概念。这里Data.Set是ADO.NET实现断开连接体系的核心组件,相当于在内存中开辟了一块独立的缓存。当我们把数据填充到Data.Set中后,即可断开与数据库的连接只对Data.Set中的数据进行处理,而后在更新到数据库中。下面我们先看看ADO和ADO.NET在数据访问上的区别。
1、数据在内存中的表示方式:
ADO:使用RecordSet对象保存数据,类似于数据表
ADO.NET:使用Data.Set,该对象可以表示有DataTable对象表示的一个或多个表
2、对个表之间的关系:
ADO:需要对单个结果表中的多个数据库表使用Join查询来组装数据,不过很难使用
ADO.NET:使用DataRelation对象,将一个DataTable对象中的行和另一个DataTable中的行关联起来。
3、数据访问顺序:
ADO:使用MoveNext方法,顺序遍历RecordSet中的行
ADO.NET:使用无序访问,也可以根据表间关系从一个表访问到另一个表
4、断接访问
ADO:默认情况下通过Active Connection属性连接。也可以通过调用OLE DB提供程序来和数据库通信
ADO.NET:DataAdapter对象使用标准化调用,来和数据库通信。可以和OLE DB数据提供程序或直接与SQl Server数据提供程序通信