zoukankan      html  css  js  c++  java
  • 怎样用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)) ;
          }
    }


  • 相关阅读:
    大数据学习——三大组件总结
    js获取当前时间的前一天/后一天
    Windows下主机名和IP映射设置
    大数据学习——HDFS的shell
    微服务化架构特征
    Spring cloud consul 相关前提知识
    Kubeadm 安装
    remove docker ce fully on centos7
    Jquery Gritter set position
    Toggle Checkboxes on/off
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4200609.html
Copyright © 2011-2022 走看看