VS連接Access數據庫--連接字符串及執行查詢語句的方法(增刪改查,用戶名查重,根據用戶獲取密碼查詢)


ACCESS數據的連接及語句執行操作,不難,久不用會生疏,每次都要找資料,干脆自己整理下,記錄下來,需要的時候,直接查看,提高效率。也供初學者參考

1、連接字符串

     public static string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Directory.GetCurrentDirectory() + "\\**.mdb;";

2、數據語句執行(增刪差改,用戶名查重,根據用戶獲取密碼查詢)

   //獲取所有數據集--返回所有數據     

  public static DataSet ExecuteQuery(string strSql)    //strsql需要執行的查詢語句
  {
     using (OleDbConnection conn = new OleDbConnection(strConn))
     {
      try
      {
        if (conn.State != ConnectionState.Open)
        {
          conn.Open();
        }
        OleDbDataAdapter adapter = new OleDbDataAdapter(strSql, strConn);
        DataSet ds = new DataSet();
        adapter.Fill(ds);
        return ds;
      }
      catch (OleDbException ole)
      {
        throw ole;
      }
      finally
      {
        conn.Close();
      }
    }

  }

     //增刪改的查詢語句的執行--返回受影響行數

    public static int ExecuteNonQuery(string strSql)    //strsql需要執行的查詢語句
    {
      try
      {
        using (OleDbConnection conn = new OleDbConnection(strConn))
        {
          if (conn.State != ConnectionState.Open)
          {
            conn.Open();
          }
          OleDbCommand cmd = new OleDbCommand(strSql, conn);
          //執行事務,事務將控制和維護事務中每個操作的一致性和完整性
          OleDbTransaction ts = conn.BeginTransaction();
          cmd.Transaction = ts;
          int iRet = cmd.ExecuteNonQuery();
          if (iRet > 0)
          {
            ts.Commit();//如果返回數據大於0,執行操作
          }
          else
          {
            ts.Rollback();//不為0,則回滾
          }
          return iRet;
        }
      }
      catch (OleDbException OleDbException)
      {
        throw OleDbException;
      }
    }

 

    /// 查詢返回第一行數據---根據用戶名查密碼(返回根據用戶名返回的一條數據)
    public static DataRow ExecuteRow(string strLoginSql)    //strsql需要執行的查詢語句
    {
      DataRow row;
      using (OleDbConnection conn = new OleDbConnection(strConn))   //嘗試鏈接數據庫
      {
        try
        {
          if (conn.State != ConnectionState.Open)
          {
            conn.Open();
          }
          OleDbDataAdapter adapter = new OleDbDataAdapter(strLoginSql, strConn);//實例化一個數據適配器
          DataTable ds = new DataTable();
          adapter.Fill(ds);//將數據填充到適配器中
          if (ds.Rows.Count == 0)
          {
            row = null;
          }
          else
          {
            row = ds.Rows[0];
          }
        }
        catch (Exception ex)
        {
          return null;
        }
        finally
        {
          conn.Close();
        }
      }
        return row;
    }

    /// 查詢結果,返回第一行第一列----用於查重(注冊用戶名是否已經存在,插入數據是否已經存在)---返回0、1
 
    public static int ExecuteScalar(string strSql)    //strsql需要執行的查詢語句
   {
      try
      {
        using (OleDbConnection conn = new OleDbConnection(strConn))
        {
          if (conn.State != ConnectionState.Open)
          {
            conn.Open();
          }
          OleDbCommand cmd = new OleDbCommand(strSql, conn);
          Object obj = cmd.ExecuteScalar();
          if (obj != null && !Convert.IsDBNull(obj))
          {
            return 1;
          }
          else
          {
            return 0;
          }
        }
      }
      catch (OleDbException OleDbException)
      {
          throw OleDbException;
      }
    }

 

主要對這個方法留個備份,也供初學使用者參考。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM