8.4 DataAdapter类
要在DataSet中提取记录并将它们填入表中,需要使用另一个ADO.NET对象DataAdapter。它是提供程序相关的对象,因此每一个提供程序都有一个DataAdapter类(如SqlDataAdapter、OracleDataAdapter等)。
DataAdapter是DataSet中的表和数据源间的桥梁。它含有查询和更新数据源所需的全部命令。
为了让DataAdapter能够编辑、删除或添加行,需要设定DataAdapter对象的InsertCommand、UpdateCommand和DeleteCommand属性。利用DataAdapter填充DataSet,必须设定SelectCommand。
如表8-2所示,DataAdapter提供了3个主要的方法。
表8-2 DataAdapter方法
方法 |
描述 |
Fill() |
执行SelectCommand中的查询后向DataSet添加一个DataTable。如果查询返回多个结果集,该方法将依次添加多个DataTable对象。还可以用该方法向现有的DataTable添加数据 |
FillSchema() |
执行SelectCommand中的查询,但只获取架构信息,它向DataSet中添加一个DataTable。该方法并不往DataTable中添加任何数据。相反,它只利用列名、数据类型、主键和唯一约束等信息预配置DataTable |
Update() |
检查DataTable中的所有变化并执行适当的 InsertCommand、UpdateCommand和DeleteCommand操作为数据源执行批量更新 |
图8-4显示了DataAdapter及其Command对象是如何一起和数据源及DataSet一起工作的。
 |
图8-4 DataAdapter如何和数据源交互 |
【
|