C# 操作 ACCESS

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;


/// <summary>
/// DataAccess 的摘要说明
/// </summary>
public class DataAccess
{
     protected static OleDbConnection conn = new OleDbConnection();
     protected static OleDbCommand comm = new OleDbCommand();
public DataAccess()
{
   //init
}
     private static void openConnection()
     {
         if (conn.State == ConnectionState.Closed)
         {
             conn.ConnectionString = @"Provider=Microsoft.Jet.OleDb.4.0;Data Source="+ConfigurationManager.AppSettings["myconn"];//web.config文件里设定。
             comm.Connection = conn;
             try
             {
                 conn.Open();
             }
             catch (Exception e)
             { throw new Exception(e.Message); }

         }
       
     }//打开数据库
  
     private static void closeConnection()
     {
         if (conn.State == ConnectionState.Open)
         {
             conn.Close();
             conn.Dispose();
             comm.Dispose();
         }
     }//关闭数据库

     public static void excuteSql(string sqlstr)
     {
         try
         {
             openConnection();
             comm.CommandType = CommandType.Text;
             comm.CommandText = sqlstr;
             comm.ExecuteNonQuery();
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         finally
         { closeConnection(); }
     }//执行sql语句

     public static OleDbDataReader dataReader(string sqlstr)
     {
         OleDbDataReader dr = null;
         try
         {
             openConnection();
             comm.CommandText = sqlstr;
             comm.CommandType = CommandType.Text;

             dr = comm.ExecuteReader(CommandBehavior.CloseConnection);
         }
         catch
         {
             try
             {
                 dr.Close();
                 closeConnection();
             }
             catch { }
         }
             return dr;
         }//返回指定sql语句的OleDbDataReader对象,使用时请注意关闭这个对象。
     public static void dataReader(string sqlstr, ref OleDbDataReader dr)
     {
         try
         {
             openConnection();
             comm.CommandText = sqlstr;
             comm.CommandType = CommandType.Text;
             dr=comm.ExecuteReader(CommandBehavior.CloseConnection);
         }
         catch
         {
             try
             {
                 if (dr != null && !dr.IsClosed)
                     dr.Close();
             }
             catch
             {
             }
             finally
             {
                 closeConnection();
             }
         }
     }//返回指定sql语句的OleDbDataReader对象,使用时请注意关闭

     public static DataSet dataSet(string sqlstr)
     {
         DataSet ds = new DataSet();
         OleDbDataAdapter da = new OleDbDataAdapter();
         try
         {
             openConnection();
             comm.CommandType = CommandType.Text;
             comm.CommandText = sqlstr;
             da.SelectCommand = comm;
             da.Fill(ds);

         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         finally
         {
             closeConnection();
         }
         return ds;
     }//返回指定sql语句的dataset

     public static void dataSet(string sqlstr, ref DataSet ds)
     {
         OleDbDataAdapter da = new OleDbDataAdapter();
         try
         {
             openConnection();
             comm.CommandType = CommandType.Text;
             comm.CommandText = sqlstr;
             da.SelectCommand = comm;
             da.Fill(ds);
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         finally
         {
             closeConnection();
         }
     }//返回指定sql语句的dataset

     public static DataTable dataTable(string sqlstr)
     {
         DataTable dt = new DataTable();
         OleDbDataAdapter da = new OleDbDataAdapter();
         try
         {
             openConnection();
             comm.CommandType = CommandType.Text;
             comm.CommandText = sqlstr;
             da.SelectCommand = comm;
             da.Fill(dt);
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         finally
         {
             closeConnection();
         }
         return dt;
     }//返回指定sql语句的datatable
     public static void dataTable(string sqlstr, ref DataTable dt)
     {
         OleDbDataAdapter da = new OleDbDataAdapter();
         try
         {
             openConnection();
             comm.CommandType = CommandType.Text;
             comm.CommandText = sqlstr;
             da.SelectCommand = comm;
             da.Fill(dt);
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         finally
         {
             closeConnection();
         }
     }//返回指定sql语句的datatable

     public static DataView dataView(string sqlstr)
     {
         OleDbDataAdapter da = new OleDbDataAdapter();
         DataView dv = new DataView();
         DataSet ds = new DataSet();
         try
         {
             openConnection();
             comm.CommandType = CommandType.Text;
             comm.CommandText = sqlstr;
             da.SelectCommand = comm;
             da.Fill(ds);
             dv = ds.Tables[0].DefaultView;
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         finally
         {
             closeConnection();
         }
         return dv;
     }
//返回指定sql语句的dataview

}

你可能感兴趣的:(C# 操作 ACCESS)