各种.Net平台开发语言开发数据库应用程序,一般并不直接对数据库操作(直接在程序中调用存储过程等除外),而是先完成数据连接和通过数据适配器填充DataSet对象,然后客户端再通过读取DataSet来获得需要的数据,同样更新数据库中数据,也是首先更新DataSet,然后再通过DataSet来更新数据库中对应的数据的。可见了解、掌握ADO.NET,首先必须了解、掌握DataSet。DataSet主要有三个特性:
1. 独立性。DataSet独立于各种数据源。微软公司在推出DataSet时就考虑到各种数据源的多样性、复杂性。在.Net中,无论什么类型数据源,它都会提供一致的关系编程模型,而这就是DataSet。
2. 离线(断开)和连接。DataSet既可以以离线方式,也可以以实时连接来操作数据库中的数据。这一点有点像ADO中的RecordSet。
3. DataSet对象是一个可以用XML形式表示的数据视图,是一种数据关系视图。
一.DataSet对象的结构模型及和RecordSet的比较
虽说ADO.NET是 ADO在.Net平台下得后继版本,但二者的区别是很大的。突出表现在ADO中的RecordSet对象和ADO.NET中的DataSet对象。RecordSet其实也是非常灵活的一个对象,微软公司推出它也是煞费苦心,如:RecordSet可以离线操作数据库,性能优良,效率较高等等这些都让当时的程序员为之一振。RecordSet虽然已经很复杂,但DataSet却比RecordSet复杂的多,我们知道每一DataSet往往是一个或多个DataTable 对象的集合,这些对象由数据行和数据列以及主键、外键、约束和有关DataTable对象中数据的关系信息组成。而RecordSet只能存放单张数据表,虽然这张数据表可以由几张数据表JOIN生成。所以有些时候说,RecordSet更类似于DataSet中的DataTable。DataSet对象的结构模型如图01所示:

图01:DataSet对象的结构模型图
【中国下载站】【设为主页】【收藏本页】【打印本文】【回到顶部】【关闭此页】