前面我们已经说了如何操作数据库,但几乎全部是通过OleDbCommand和OleDbDataReader来做的,这次我们说说如何通过OleDbDataAdapter来操作数据库!关于OleDbDataAdapter的用法实际上我们在以前已经讲过了,由于OleDbDataAdapter是DataSet和数据源之间建立联系的一个桥梁,而DataSet用于对单层数据、XML 数据和关系数据进行存储、远程处理和编程!。
我们曾经讲过利用Command来对数据库进行增加、删除和修改操作,但是我们利用DataSet和DataAdapter能够更加方便的对数据库进行操作,基本是我们可以认为DataSet是专门为WEB而设计的,这也是ADO.NET和ADO的一个重要的区别。
下面是DataSet和SQL数据的的关系图, 通过这个图我们可以看出DataSet和DataAdapter以及SQL数据库的关系。
下面我们来讲解一下如何利用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。下一章我们将讲述Data
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 360快剪辑怎么使用 36金山词霸如何屏幕取词百度收购PPS已敲定!3
最新文章
微信3.6.0测试版更新了微信支付漏洞会造成哪
360快剪辑怎么使用 360快剪辑软件使用方法介酷骑单车是什么 酷骑单车有什么用Apple pay与支付宝有什么区别 Apple pay与贝贝特卖是正品吗 贝贝特卖网可靠吗
人气排行 xp系统停止服务怎么办?xp系统升级win7系统方电脑闹钟怎么设置 win7电脑闹钟怎么设置office2013安装教程图解:手把手教你安装与qq影音闪退怎么办 QQ影音闪退解决方法VeryCD镜像网站逐个数,电驴资料库全集同步推是什么?同步推使用方法介绍QQ2012什么时候出 最新版下载EDiary——一款好用的电子日记本
查看所有0条评论>>