DataSet

如何利用DataSet和DataAdapter来操作上据库

MyConnection.Open(); //打开数据库,请参考前面文章的内容

MyCommand.Connection = MyConnection; //设置Command,请参考前面文章的内容

MyCommand. CommandText = “select * from admin”; //设置Command,参考前面文章的内容

OleDbDataAdapter MyDataAdapter = new OleDbDataAdapter(); //定义OleDbDataAdapte对象

MyDataAdapter.SelectCommand = MyCommand; //设置OleDbDataAdapte对象的SelectCommand属性

System.Data.DataSet MyDataSet = new System.Data.DataSet(); //定义DataSet

MyDataAdapter.Fill(MyDataSet,"admin"); //通过OleDbDataAdapte对象的SelectCommand属性填充MyDataSet

MyConnection.Close(); //关闭数据库

整个过程分以下几步:

1.建立数据库连接(打开数据库,请参考前面文章的内容)

2.建立OleDbDataAdapter对象!

3.实例化OleDbDataAdapter对象!

4.建立一个DataSet对象,执行SQL语句得到的表添加到其中

5.关闭数据库连接

通过上面的步骤我们就可以使用DataBind将DataSet中的数据绑定到特定的控件上了!(下一章我们将讲解如何邦定数据库)

我们说过但是我们可以利用DataSet和DataAdapter能够更加方便的对数据库进行操作,如何通过OleDbDataAdapter来执行数据库的操作的,我们只需要对DataSet中的数据进行增加、删除、修改等操作,然后在将DataSet提交给数据库即可

//利用利用DataSet和DataAdapter操作数据库

public Boolean DoDB()

{

MyConnection.Open(); //打开数据库,请参考前面文章的内容

MyCommand.Connection = MyConnection; //设置Command,请参考前面文章的内容

MyCommand. CommandText = “select * from admin”; //设置Command,参考前面文章的内容

OleDbDataAdapter MyDataAdapter = new OleDbDataAdapter(); //定义OleDbDataAdapte对象

MyDataAdapter.SelectCommand = MyCommand; //设置OleDbDataAdapte对象的SelectCommand属性

System.Data.DataSet MyDataSet = new System.Data.DataSet(); //定义DataSet

MyDataAdapter.Fill(MyDataSet,"admin"); //通过OleDbDataAdapte对象的SelectCommand属性填充MyDataSet

OleDbCommandBuilder MyCommandBuild = new OleDbCommandBuilder(MyDataAdapter);//关联DataSet和数据库的操作的,必不可少

foreach(DataRow dr in MyDataSet.Tables["Admin"].Rows)

{

if(dr["Admin_Code"].ToString().Trim().Equals("a"))

{

dr.Delete(); //删除DataSet 中的行

}

}

MyDataSet.Tables["Admin"].Rows[0][0] = "ss";//更新DataSet中第一行第一列的值

string [] dd = new String[3]{"a","b","v"};

MyDataSet.Tables["Admin"].Rows.Add(dd);//增加一行

MyDataAdapter.Update(MyDataSet,"Admin");//将DataSet中”Admin”表中的数据提交给数据库,完成数据库的更新

MyConnection.Close();//关闭数据库

}

这个程序和我们前面用到的利用Command的delete、insert、update例程是执行同样的功能的,我这里改成了用MyDataAdapter来达到同样的效果!

要通过MyDataAdapter执行对数据库的操作,我们要有下面的几步:

1. 建立数据库连接MyConnection

2. 实例化OleDbDataAdapter对象!

3.建立一个DataSet对象,并把执行select语句得到的记录添加到其中

4. 建立OleDbCommandBuilder对象!并让它与我们前面的OleDbDataAdapter对象关联!语句如下:OleDbCommandBuilder MyCommandBuild = new OleDbCommandBuilder(MyDataAdapter);

5. 对DataSet中包含表的特定记录进行增加、删除、修改

6. 执行OleDbDataAdapter对象的Update命令更新数据库,语句如下: MyDataAdapter.Update(ds,"notes");

7. 关闭数据库连接

总结:

DataSet是ADO.NET中非常重要的内容,也是ADO.NET和ADO的区别的一个重要表现,特别适合成批的数据操作,也是数据棒定的重要来源。OleDbDataAdapter是DataSet和数据源之间建立联系的一个桥梁,要熟练的使用DataSet我们需要熟练的掌握OleDbDataAdapter。

 

 

 

 

插入代码:datatable mytable=DS.Tables[0];
datarow myrow=mytable.newrow();
myrow["字段名"]=textbox1.text;
.............................
myrow["字段名"]=textbox3.text;
mytable.rows.add(myrow);
myda=new SqlDataAdapter("select * from 表名",myconn);//myda为数据适配器对象
SqlCommandBulider mycb=new SqlCommandBulider(myda);//声明SqlCommandBulider对象,和SqlDataAdapter对象相连
myda.Update(myds,"表名");//将数据集中的数据更新到数据库中
gridview1.DataSource=ds.Tables["表名"].Defaultview;
gridview1.Databind();


删除代码:
datatable mytable=DS.Tables[0];
foreach(Datarow row in mytable)
{
if (row["字段名"].tostring().trin()==textbox3.text.trim())
{ row.delete();
}
}
myda=new SqlDataAdapter("select * from 表名",myconn);//myda为数据适配器对象
SqlCommandBulider mycb=new SqlCommandBulider(myda);//声明SqlCommandBulider对象,和SqlDataAdapter对象相连
myda.Update(myds,"表名");//将数据集中的数据更新到数据库中
gridview1.DataSource=ds.Tables["表名"].Defaultview;
gridview1.Databind();

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值