ADO.Net中DataSet的应用

一、知识点描述

1、DataSet是ADO.NET的中心概念。可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库的独立数据集合。也就是说,即使断开数据链路,或者关闭数据库,DataSet依然是可用的。

2、创建和刷新 DataSet 并依次更新原始数据的步骤:

  • 通过 DataAdapter 使用数据源中的数据生成和填充 DataSet 中的每个 DataTable。
  • 通过添加、更新或删除 DataRow 对象更改单个 DataTable 对象中的数据。
  • 调用 DataAdapter 的 Update 方法,并将第二个 DataSet 作为参数传递。

3、DataSet所有数据都加载在内存上执行的,可以提高数据访问速度,提高硬盘数据的安全性,极大的改善了程序运行的速度和稳定性。

4、每一个DataSet对象是由若干个 DataTable对象组成。

5、DataSet使用方法:

  • 把数据库中的数据通过DataAdapter对象填充DataSet。
  • 通过DataAdapter对象操作DataSet实现更新数据库。

6、DataSet对象的三大特性

  • 独立性。DataSet独立于各种数据源。
  • 离线(断开)和连接。
  • DataSet对象是一个可以用XML形式表示的数据视图,是一种数据关系视图。

二、思维导图

三、效果截图

四、示例代码

 1 DataSet PubsSet = new DataSet();
 2 SqlConnection ConnPubs;
 3 DataSet ds = new DataSet();
 4
 5         private void frm_PatientInformationManage_Load(object sender, EventArgs e)
 6         {
 7
 8             ConnPubs = new SqlConnection(); //声明并实例化SQL连接;
 9             ConnPubs.ConnectionString =
10                 ConfigurationManager.ConnectionStrings["Sql"].ConnectionString;             //在字符串变量中,描述连接字符串所需的服务器地址、数据库名称、集成安全性(即是否使用Windows验证);
11             SqlCommand sqlCommand = new SqlCommand();                                       //声明并实例化SQL命令;
12             sqlCommand.Connection = ConnPubs;
13             sqlCommand.CommandText = "select P_id as 医疗卡号,P_name as 姓名 ,P_sex as 性别,P_birthday as 生日,P_nation as 民族,Feetype as 付费类型,P_tel as 电话,P_pym as 拼音码,P_address as 地址,P_career as 职业,P_bloodtype  as 血型,P_allergic as 过敏药物,P_idcard as 身份证号,P_Photo from tb_patient";
14
15             ConnPubs.Open();
16             SqlDataAdapter da = new SqlDataAdapter();
17             da.SelectCommand = sqlCommand;
18             da.Fill(PubsSet, "tb_patient");
19             dataGridView1.DataSource = PubsSet.Tables["tb_patient"];
20
21             this.dataGridView1.Columns["P_Photo"].Visible = false;   //隐藏照片列
22
23             SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();                                           //声明并实例化SQL数据适配器,同时借助构造函数,将其SelectCommand属性设为先前创建的SQL命令;
24             sqlDataAdapter.SelectCommand = sqlCommand;                                                      //将SQL数据适配器的查询命令属性指向SQL命令;
25             DataTable tb_patient = new DataTable();                                                         //声明并实例化数据表,用于保存所有班级,以用作下拉框数据源;
26
27             sqlDataAdapter.Fill(tb_patient);                                                                //SQL数据适配器读取数据,并填充班级数据表;
28             this.cmb_SearchPYM .DataSource = tb_patient;                                                         //将班级下拉框的数据源设为班级数据表;
29            // this.cmb_SearchPYM.DisplayMember = "P_pym";                                                          //将班级下拉框的显示成员设为班级数据表的名称列;
30             this.cmb_SearchId .DataSource = tb_patient;
31            // this.cmb_SearchId.DisplayMember = "P_id";
32             this.cmb_SearchId.DisplayMember = "医疗卡号";
33             this.cmb_SearchPYM.DisplayMember = "拼音码";
34             //this.cmb_SearchPYM.ValueMember = "U_id";
35
36
37         }

原文地址:https://www.cnblogs.com/hsp9/p/9940103.html

时间: 2024-10-10 00:57:02

ADO.Net中DataSet的应用的相关文章

Ado.net中DataSet和SqlDataReader的区别

概述: 一,SqlDataReader //基于连接,只读访问 适合数据量较小. SqlDataAdapter //基于非连接,适于数据量较大时,可以另行修改,最后再把修改结果返回给数据库.要求资源也大一点 二,SqlDataAdapter 读取数据后将数据集放入DataSet ,DataSet 的数据存在本地客服机内存. 三,SqlDataReader返回的是一个数据读写器,只能一条条的读,操作起来不灵活,一般在只读的时候才用到. SqlDataAdapter返回的是数据集或者表,可以对其中的

浅谈ADO.NET中的对象——Connection、Command、DataReader、DataAdapter、DataSet、DataTable

可能是当初没有好好总结的缘故,学习.NET以来,对ADO.NET中的对象一直有些模糊,今天重新回顾了一下,通过查资料,总结,结合自己的观点整理一下ADO.NET中Connection.Command.DataReader.DataAdapter. DataSet.DataTable这几个对象的相关知识,希望对初学者能起到一个全局把控的作用,希望大牛能留下宝贵的指导意见. 以下的例子仅以连接 SQL Server数据库为例,所以分别以SqlConnection.SqlCommand.SqlData

C# ADO.NET中的五个主要对象<转>

Connection 物件   Connection 对象主要是开启程序和数据库之间的连结.没有利用连结对象将数据库打开,是无法从数据库中取得数据的.这个物件在ADO.NET 的最底层,我们可以自己产生这个对象,或是由其它的对象自动产生. Command 物件   Command 对象主要可以用来对数据库发出一些指令,例如可以对数据库下达查询.新增.修改.删除数据等指令,以及呼叫存在数据库中的预存程序等.这个对象是架构在Connection 对象上,也就是Command 对象是透过连结到数据源

ADO.NET中的五个主要对象

Connection:主要是开启程序和数据库之间的连接.没有利用连接对象将数据库打开,是无法从数据库中取得数据的.Close和Dispose的区别,Close以后还可以Open,Dispose以后则不能再用. Command:主要可以用来对数据库发出一些指令,例如可以对数据库下达查询.新增.修改.删除数据等指令,以及调用存在数据库中的存储过程等.这个对象是架构在Connection 对象上,也就是Command 对象是透过连接到数据源. DataAdapter:主要是在数据源以及DataSet 

ADO.NET之DataSet类

DataSet相当于一个小型数据库,通过它可以管理数据和关系 1.将sql代码的返回结果填充到该类中,然后从该类中读取,显示.(类似于Sqldatareader类) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; using System.Data; nam

ADO.NET中5大对象简介

ADO.NET在以前的学习中接触过,并以应用过,但并没有好好的总结过.最近这段时间的学习又复习了这块的知识,下面就我现在所知道的总结归纳一下. ADO.NET是基于XML的全新的数据库访问技术,与传统的ADO相比,它主要核心z是XML, 它是一个断开式连接,它主要依靠的是DataSet数据集. 一.ADO.NET对象模型,如下图. .NET数据提供程序和DataSet是ADO.NET中的两个重要组件. .NET数据提供程序:保证了客户端和服务器的连接(即,应用程序和数据库之间的连接). .NET

C#中DataSet类的使用

DataSet类是ADO.NET中最核心的成员之一,也是各种开发基于.Net平台程序语言开发数据库应用程序最常接触的类.每一个DataSet都有很多个DataTables和Relationships.RelationShip应该也是一种表,特殊的是,这个表只是用来联系两个数据表的.每一个DataTable都有很多datarows和datacols, 也包括ParentRelations,ChildRelations 和一些限制条件像主键不可以重复的限制. DataSet每一行有一个RowStat

[翻译]比较ADO.NET中的不同数据访问技术(Performance Comparison:Data Access Techniques)

Performance Comparison: Data Access Techniques Priya DhawanMicrosoft Developer Network January 2002 原文链接:https://msdn.microsoft.com/en-us/library/ms978388.aspx 概要:在典型的应用环境中,比较不同数据访问技术的表现性能.适用于Microsoft .NET Framework Beta2 和 Microsoft SQL Server 2000

关于javascript中dataset的问题小结

DataSet是ADO.NET的中心概念.可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库的独立数据集合.所谓独立,就是说,即使断开数据链路,或者关闭数据库,DataSet依然是可用的,DataSet在内部是用XML来描述数据的,由于XML是一种与平台无关.与语言无关的数据描述语言,而且可以描述复杂关系的数据,比如父子关系的数据,所以DataSet实际上可以容纳具有复杂关系的数据,而且不再依赖于数据库链路. 一.关于dataset 1.html5自定义属性及基础 html5