Dataset 并不是Recordset的简单翻版。从一定的意义上来说,DataView更类似于Recordset。如果说DataReader是访问数据的最容易的方式,那么Dataset则是最完整的数据访问对象。通过Dataset,你可以操作已有的数据,还可以通过程序创建Dataset,加入Table到Dataset,并建立这些Table之间的关系。

使用Dataset的几个步骤

第1步,创建到数据源的连接:

SQLConnection con =new SQLConnection("server=localhost;uid=sa;pwd=;database=pubs");

第2步,创建DataSetCommand对象,指定一个存储过程的名字或者一个SQL语句,指定数据链路;

SQLDataSetCommand cmd =new SQLDataSetCommand("SELECT * FROM Authors", con);

第3步,创建一个Dataset对象

DataSet ds = new DataSet();

第4步,调用DataSetCommand的FillData方法,为Dataset填充数据。注意:数据链路没有必要是打开的。如果数据链路是关闭状态,FillData函数会打开它,并在FillData之后关闭数据链路。如果数据链路本来就是打开的,在FillData之后,数据链路依然保持打开状态。

int iRowCount = cmd.FillDataSet(ds, "Authors");

第5步,操作数据。由于FillData返回了记录的个数,我们可以构造一个循环,来操纵Dataset中的数据。

for(int i=0; i< iRowCount; i++){
DataRow dr = ds.Tables[0].Rows[i];
Console.WriteLine(dr["au_lname"]);
}



  //新建表
   DataTable dt=new DataTable();


   //定义表结构
   dt.Columns.Add("Id",typeof(System.Int32));
   dt.Columns.Add("Code",typeof(System.String));
   dt.Columns.Add("Name",typeof(System.String)); 

//添加新行
   for(int i=0;i<=3;i++)
   {
    DataRow dr=dt.NewRow();
    dr[0]=i;
    dr[1]="s"+i;
    dr[2]="sic"+i;
    dt.Rows.Add(dr);
   }

0
0
0
(请您对文章做出评价)