ADO.NET -- DataSet对象

当应用程序需要查询数据时,我们可以使用DataReader对象来读取数据,DataReader每次只读取一行数据到内存中。如果我们想查看100条数据,就要从数据库读100次,并且在这个过程中要一直保持和数据库的连接,这就给数据库服务器增加了很大的负担。

ADO.NET提供了DataSet(数据集)对象来解决这个问题。利用数据集,我们可以在断开数据库连接的情况下操作数据,可以操作来自多个数据源的数据。

                                                        认识DataSet对象

我们可以简单地把数据集理解为一个临时的数据库,它把应用程序需要的数据临时保存在内存中,由于这些数据都缓存在本地机器上,就不需要一直保持和数据库的连接。我们的应用程序需要数据时,就直接从内存中的数据集读取,也可以对数据集中的数据进行修改,然后将修改后的数据一起提交给数据库。

数据集不直接和数据库打交道,它和数据库之间的相互作用都是通过.NET数据提供程序来完成的,所以数据集是独立于任何数据库的。数据库集中包含多个表,这些表构成了数据表集合,其中的每个数据表都是一个DataTable对象。在每个数据表中又有列和行,

所有的列一起构成了一个数据列集合,其中每个数据列叫做DataColumn。所有的行集合构成了数据行集合,每一行叫做DataRow。

DataSet位于System.Data;命名空间下。一般在VS2005/VS2008中,都自动引入了该命名空间。

下面,我们就看一下,如何手动创建一个DataSet(数据集)

Code:
  1. class Demo   
  2. {   
  3.             static void Main()   
  4.           {   
  5.                      //使用new关键字创建DataSet对象   
  6.                      DataSet ds = new DataSet();   
  7.                        
  8.                      //创建一个DataTable对象   
  9.                      DataTable dtClass = new DataTable("table");   
  10.   
  11.                      //创建两列 name score   
  12.                      DataColumn name = new DataColumn("name",typeOf(string));   
  13.                      name.MaxLength = 10;   
  14.   
  15.                      DataColumn score = new DataColumn("score",typeOf(int));   
  16.                         
  17.                      //添加列至表   
  18.                      dtClass.Columns.Add(name);   
  19.                      dtClass.Columns.Add(score);   
  20.   
  21.                     //利用DataTable的NewRow()方法创建一个DataRow对象   
  22.                      DataRow dr = dtClass.NewRow();   
  23.                      dr["name"] = "hamber";   
  24.                      dr["score"] = 100; 
  25.                      dtClass.Rows.Add(dr);  
  26.   
  27.                      //将表添加进DataSet中   
  28.                      ds.Tables.Add(dtClass);                    
  29.                            
  30.          }   
  31. }  

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值