C#編寫 access資料庫操作類

來源:互聯網
上載者:User

using System;
using System.Data;
using System.Web;
using System.Configuration;
using System.Data.OleDb;
using System.Web.UI.WebControls;

namespace accdb
 //科長-2006-07-write
 //access資料庫操作類
{
 /// <summary>
 /// dbconn 的摘要說明。
 /// </summary>
 public class dbconn
 {  
  /// <summary>
  /// 取一個AppSettings變數的值
  /// </summary>
  /// <param name="Appstr">AppSettingsr的名字</param>
  /// <returns></returns>
  public static string GetApp(string Appstr)
  {
   return  ConfigurationSettings.AppSettings[Appstr];
  }
  /// <summary>
  /// 彈出錯誤提示
  /// </summary>
  /// <param name="alert_str"> 提示字串</param>
  public static void  myalert(string alert_str)
  {
   HttpContext.Current.Response.Write("<script>alert('"+alert_str+"');</script>");
  }
  /// <summary>
  /// 建立SQL串連
  /// </summary>
  public static OleDbConnection  CreateOleDbConnection()
  {
   OleDbConnection myConnection = new OleDbConnection( GetApp("ConnString"));
   myConnection.Open();
   return myConnection;
  }

  /// <summary>
  /// 執行SQL語句
  /// </summary>
  /// <param name="SQl">要執行的SQL語句</param>
  public static  void dosql(string strsql )
  {
   OleDbConnection conn=dbconn.CreateOleDbConnection();
   OleDbCommand myCommand=new OleDbCommand(strsql,conn);
   myCommand.ExecuteNonQuery();
   conn.Close();
  }

  /// <summary>
  /// 更新和刪除SQL語句
  /// </summary>
  /// <param name="sql">SQL語句</param>
  /// <returns>BOOL是否執行成功</returns>
  public static bool ExecuteUpdate(string sql)
  {
   try
   {
    OleDbCommand dCom=new OleDbCommand();
    dCom.CommandText = sql;
    int flag = dCom.ExecuteNonQuery();
    if(flag != -1)
    {
     return true;
    }
    else
    {
     return false;
    }
   }
   catch//(Exception ex)
   {
    return false;
   }
  }

  /// <summary>
  /// 傳入SQL語句,返回一個DataSet類型的資料表集合
  /// </summary>
  /// <param name="strsql">SQL語句字串</param>
  /// <returns>dataset</returns>
  public static DataSet GETdataset (string strsql)
  {
   OleDbConnection conn=dbconn.CreateOleDbConnection();
   OleDbDataAdapter dApter = new OleDbDataAdapter(strsql,conn);   
   DataSet DS = new DataSet();
   dApter.Fill(DS);
   conn.Close();
   return DS;  
  }
  /// <summary>
  /// 傳入SQL語句返回一個DataTable
  /// </summary>
  /// <param name="strsql">SQL語句</param>
  /// <returns></returns>
  public static  DataTable  GetDataTable(string strsql)
  {
   
   OleDbConnection conn=dbconn.CreateOleDbConnection();
   OleDbDataAdapter DataAdapter1 = new OleDbDataAdapter(strsql, conn);
   DataSet DS=new DataSet();
   DataAdapter1.Fill(DS);
   conn.Close();
   return DS.Tables[0];
  }

  /// <summary>
  /// 傳入SQL語句,DataGrid資料幫定
  /// </summary>
  /// <param name="intPageNumber">分頁數</param>
  /// <param name="DG_name">DataGrid名稱</param>
  /// <param name="strsql">SQL語句</param>
  public static  void   BindDataGrid (int intPageNumber,DataGrid DG_name,string strsql )
  {
   // ----------- 資料庫連接 -----------   
   OleDbConnection conn=dbconn.CreateOleDbConnection();
   /* // 方法一
    SqlCommand myCommand = new SqlCommand(SqlCmd, myConnection);
    SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter();
    sqlDataAdapter1.SelectCommand = myCommand;
    DataSet ds1= new DataSet();
    sqlDataAdapter1.SelectCommand.ExecuteNonQuery();
    sqlDataAdapter1.Fill(ds1);
    DataView source = new DataView(ds1.Tables[0]);
    DataGrid1.DataSource=source;
    DataGrid1.DataBind();
    myConnection.Close();
    */
   // 方法二
   OleDbDataAdapter DataAdapter1 = new OleDbDataAdapter(strsql, conn);
   DataSet ds  = new DataSet();
   DataAdapter1.Fill(ds);
   try
   {
    DataTable DT = ds.Tables[0];
    DG_name.DataSource = DT;
    /*-----------------------------------------
     * 翻頁的時候要設定的就是下面這個屬性
     * ----------------------------------------*/
    DG_name.CurrentPageIndex = intPageNumber;
    DG_name.DataBind();
   }
   catch (OleDbException ex)
   {
     
   }
   finally
   {
    ds.Dispose();
    ds.Clear();
    DataAdapter1.Dispose();
    conn.Close();
   }
  }

 }
 
  

 

}
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.