欢迎来到天天文库
浏览记录
ID:50040967
大小:182.00 KB
页数:13页
时间:2020-03-08
《C#程序设计教程 教学课件 作者 刘瑞新第11章 使用DataSet访问数据库.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第11章使用DataSet访问数据库本章讲述的主要内容11.1DataSet概述11.2使用DataSet访问数据库11.1DataSet概述11.1.1DataSet与DataAdapterDataSet是实现ADO.NET断开式连接的核心,它通过DataAdapter从数据源获得数据后就断开了与数据源之间的连接,此后应用程序所有对数据源的操作均转向到DataSet,当所有这些操作完成后可以通过DataAdapter提供的数据源更新方法将修改后的数据写入数据库。图11-1表示了DataSet、DataAdapter和数据源之间的关系,从图中可以看到Dat
2、aSet对象并没有直接连接数据源,它与数据源之间的连接是通过DataAdapter对象来完成的。11.1DataSet概述11.1.2DataSet的组成如下图所示,DataSet主要由DataRelationCollection(数据关系集合)、DataTableCollection(数据表集合)和ExtendedProperties(扩展属性)对象组成。其中最基本,也是最常用的是DataTableCollection。11.1DataSet概述11.1.3DataSet中的对象、属性和方法1.DataSet中的对象DataSet由大量相关的数据结构组成
3、,其中最常用的有如下5个子对象,其名称及功能说明见表11-1。11.1DataSet概述11.1.3DataSet中的对象、属性和方法2.DataSet对象的常用属性DataSet对象的常用属性,见表11-2。11.1DataSet概述11.1.3DataSet中的对象、属性和方法3.DataSet对象的常用方法DataSet对象的常用方法,见表11-3。11.2使用DataSet访问数据库DataSet的基本工作过程为:首先完成与数据库的连接,DataSet在本地计算机中为用户开辟一块内存空间,通过DataAdapter(数据适配器)将得到的数据填充到D
4、ataSet中供程序使用,同时断开与服务器的连接。在这种方式下应用程序所有针对数据库的操作都是指向DataSet的,并不会立即引起数据库的更新。待数据库操作完毕后,可通过DataSet、DataAdapter提供的方法将更新后的数据一次性保存到数据库中。11.2使用DataSet访问数据库11.2.1创建DataSet创建数据集对象的语法格式为:DataSet数据集对象名=newDataSet();或:DataSet数据集对象名=newDataSet("表名");其中,前一个语法格式表示要先创建一个空数据集,以后再将已经建立的数据表(DataTable)包
5、含进来;后一条语句是先建立数据表,然后建立包含该数据表的数据集。11.2使用DataSet访问数据库11.2.2填充DataSet所谓“填充”是指将DataAdapter对象通过执行SQL语句从数据源得到的返回结果,使用DataAdapter对象的Fill方法传递给DataSet对象。其常用语法格式为:Adapter.Fill(ds);或:Adapter.Fill(ds,tablename);【演练11-1】11.2使用DataSet访问数据库11.2.3多结果集填充DataSet对象支持多结果集的填充,也就是说可以将来自同一数据表或不同数据表中不同的数据
6、集合同时填充到DataSet中。例如,下列代码将来自同一数据表的不同数据集合(政治面貌为“团员”的所有记录和籍贯为“河北省”的所有记录),填充到了同一个DataSet对象中。然后,通过DataSet对象的Tables属性分别将它们显示到两个不同的DataGridView控件中。查看示例代码11.2使用DataSet访问数据库11.2.4添加新记录通过DataSet向数据表添加新记录的一般方法如下:1)建立与数据库的连接。2)通过DataAdapter对象从数据库中取出需要的数据。3)实例化一个SqlCommandBuilder类对象,并为DataAdapt
7、er自动生成更新命令。4)使用DataAdapter对象的Fill方法填充DataSet。5)使用NewRow()方法向DataSet中填充的表对象中添加一个新行。6)为新行中各字段赋值7)将新行添加到DataSet中填充的表对象中。8)调用DataAdapter对象的Update()方法将数据保存到数据库。11.2使用DataSet访问数据库11.2.5修改记录通过DataSet修改现有数据表记录的操作方法与添加新记录非常相似,唯一不同的地方是无需使用NewRow()添加新行,而是创建一个DataRow对象后,从表对象中获得需要修改的行并赋给新建的Dat
8、aRow对象,根据需要修改各列的值(为各字段赋以新值)。最后仍需要
此文档下载收益归作者所有