《ADO.NET数据访问技术基础篇一》
DataReader
基本概念
通过DataReader我们可以以只读、顺序的方式查看数据库中的数据
常用属性
IsClosed
判断DataReader是否关闭。
RowFetchCount
用来设定一次取回多少笔记录,预设值为1笔。
DataSet
基本概念
DataSet是由一组DataTable对象组成,我们可以把DataSet看成是临时存在内存中的数据库。DataSet是独立于数据库的数据集合,也就是说在断开数据连接或者关闭数据库的状态下,DataSet仍然是可用的。因为DataSet的内部是使用XML来描述数据的,所以DataSet具有XML的特性:与平台无关、与语言无关、可描述数据之间的复杂关系。DataSet可以将数据和架构作为XML文档进行读写,数据和架构可以通过HTTP进行传输,并在支持XML的任何平台上被任何应用程序使用。
多年老搭档
DataTable
DataSet是我们放在内存中的一个临时的数据库,DataTable就相当于这个临时数据库中的数据表或者数据视图。在DataTable中,存在DataRow和DataColumn这两个对象。DataRow对应实际数据表中的行(记录)、DataColumn对应数据表中的列(字段)。DataTable可以保存记录的初始状态和当前状态,而同样可以实现DataTable相当于真实数据表功能的Recordset则不能保存记录的初始状态和当前状态,所以DataTable和Recordset是完全不同的两个概念。
DataColumn用来存放自定义数据;DataRow表示DataType中实际的数据,我们通过DataRow将数据添加到用DataColumn定义好的DataTable中。
DataTableCollection
DataTableCollection负责管理所有的DataTable。
DataRelationCollection
DataRelationCollection对象就是管理DataTable的关系DataRelation。
ExtendedProperties
操作步骤
1、通过DataAdapter使用数据源中的数据生成和填充DataSet中的每个DataTable。
2、通过添加、更新或者删除DataRow对象更改单个DataTable中的数据。
3、调用GetChanges方法创建只反映对数据进行的更改的第二个DataSet。
4、调用DataAdapter总的Update方法,并将第二个DataSet作为参数进行传递。
5、调用Merge方法将第二个DateSet中的更改合并到第一个中。
6、针对DataSet调用AcceptChanges或者调用RejectChanges取消更改。
DataAdapter
基本概念
DataAdapter表示一组SQL命令和一个数据库连接,用于填充DataSet和更新数据源中的数据,为DataSet和数据源之间提供数据交互的功能。DataAdapter对象有一系列Command对象和决定DataAdapter如何与DataSet对象通信的映射属性的集合组成。
常用属性
DataAdapter有SelectCommand、InsertCommand、UpdateCommand和DeleteCommand这四个属性,这四个属性实际上是Command的实例对象。我们可以通过这四个属性指定执行既定的SQL语句或者某个存储过程。
常用方法
Fill
调用SelectCommand属性指定的SELECT语句,并将这些放到DataSet中的表中,最后对数据源进行更新。
Update
将DataSet表的更改反馈到相应的数据源中,为DataSet的DataTable中的每一指定的行调用相应的INSERT、UPDATE或者DELETE命令。
运行机制
当使用DataAdapter将查询结果存储到DataSet时,DataAdapter使用Command对象执行对数据库的操作。DataAdapter通过DataReader读取结果,然后将结果复制到DataSet的新行中。DataAdapter把对数据库中的数据进行操作的Command对象存储在DataAdapter对象中的SelectCommand属性中。
操作步骤
1、创建Connection对象,连接到数据库。
2、创建DataAdapter对象,该对象包含4个可以指向Command对象的属性,通过这些属性我们可以指定SQL语句从而在数据库中进行SELECT、INSERT、DELETE和UPDATE等操作。
3、创建一个包含多个表的DataSet对象。
4、通过DataAdapter对象调用Fill方法来填充DateSet中的DataTable。
5、修改DataSet中的数据,我们可以通过代码执行修改或者将DataSet绑定的用户界面控件(例如DataGrid),然后在控件中更改数据。
6、通过DataAdapter对象调用Update方法,将修改后的数据返回数据库。
DataTable
基本概念
DataTable是一个临时存储在内存中的网格虚拟表
常用属性
Columns
获取属于该表的列的集合。
Rows
获取属于该表的行的集合。
常用方法
Clear
清除所有DataTable的数据。
Clone
克隆DataTable的完整结构。
Copy
复制DataTable的结构。
Dispose
释放空间。
Equals
判断指定的对象是否等于当前对象。
使用说明
创建
DataTable可以单独使用,也可以作为DataSet或者DataView等对象的组成部分一起使用。
方法一:我们可以使用Add方法将DataTable添加到单独的DataTable对象的Tables集合或者DataSet对象中。
方法二:使用DataAdapter对象的Fill方法或者FillSchema方法在DataSet中创建。
注意事项
一、将一个DataTable作为成员添加到一个DataSet的Tables集合中后,不能再将其添加到其他DataSet中。
二、初次创建DataTable时,默认没有架构,需要自行定义架构。要定义表的架构,我们需要创建DataColumn对象并将其添加到Columns集合中;再定义了架构后,通过将DataRow对象添加到Rows结合中将数据行添加到表中。
三、创建DataTable时,不强制要求定义TableName属性的值;在该值留空时,默认从0开始对DataTable进行命名。
总结
总结的话,觉得用图阐述更简洁明了。
感谢您的宝贵时间,祝生活愉快,谢谢~~~
—joker