如何用OleDbDataAdapter来对数据库进行操作?

 

请问如何用OleDbDataAdapter来对数据库进行删除、修改和添加?

 

OleDbDataAdapterDataSet和数据源之间建立联系的重要纽带。用它我们可以对数据库进行删除、修改和添加等操作,下面以删除(Delete)为例,说说操作步骤:
    1
、用OleDbConnection conn = getConn()语句建立数据库连接;
    2
、实例化OleDbDataAdapter对象,用select语句取得要删除的记录。而不是使用delete语句;
    3
、建立一个DataSet对象,并把执行select语句得到的记录添加到其中;

4、建立OleDbCommandBuilder对象,并与前面的OleDbDataAdapter对象关联,以监视RowUpdating事件的发生。在删除了指定的记录后,要通过执行OleDbDataAdapter对象的Update命令来更新数据库,语句如下:

 OleDbCommandBuilder mybuilder = new OleDbCommandBuilder(myDataAdapter);
    5
、删除DataSet中包含表的特定记录
    6
、执行OleDbDataAdapter对象的Update命令更新数据库:

myDataAdapter.Update(ds,"notes")

7、关闭数据库连接。

以上操作步骤不仅适合于Delete操作,同样适合InsertUpdate等操作。下面我们以通过OleDbDataAdapter来执行删除(Delete)特定的数据库记录为例,看看具体代码:

public Boolean DelNote(string delid)

//删除特定记录,通过string类型的ID删除字段
{
Boolean tempvalue=false;
      try
      {
              OleDbConnection conn = getConn(); 

   //连接数据库.getConn():得到连接对象
              string selectstr = "select * from notes where id=" + delid;
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(selectstr,conn);
OleDbCommandBuilder mybuilder = new OleDbCommandBuilder(myDataAdapter);
//
建立OleDbCommandBuilder
         DataSet ds = new DataSet();   

//建立DataSet()实例
              myDataAdapter.Fill(ds,"notes");
       
              foreach(DataRow dr in ds.Tables["notes"].Rows)

//由于在开始选择了所有的记录,此处用集合方式

              {               
                    if(dr["id"].ToString().Equals(delid))
                    {
                        dr.Delete();
                    }
                  }
              myDataAdapter.Update(ds,"notes");
                       
              conn.Close();
          tempvalue=true;
          return(tempvalue);

//执行成功返回TRUE,否则返回FALSE
    }

catch(Exception e)
          {
              throw(new Exception("
,数据库删除出错:" + e.Message)) ;
      }
}


  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值