1、配置web.config文件:配置數據庫連接參數
<configuration>
 <appSettings/>
 <connectionStrings>
  
  <add name="ConnectionString" connectionString="PRovider=Microsoft.Jet.OLEDB.4.0;Data Source=F:/TeacherSystem/App_Data/db.mdb;Jet OLEDB:Database PassWord=123"
   providerName="System.Data.OleDb" />
 </connectionStrings>
 2
程序設計開始:
1、按要求建立access數據庫及數據表
2、編寫數據庫訪問、操作的公用類,此類可以復用到以后開發的任何系統中
(1)、新建一個C# 類庫項目, 命名為“Com.LXJ”,設置項目屬性:程序集名稱、默認命名空間均為“Com.LXJ”
(2)、在此項目目錄下創建目錄Database,新建C# 類文件ConnDbForAccess.cs 在Database目錄下。
添加引用:System.Web.dll
(3)、編寫ConnDbForAccess.cs 的代碼
  using System;
using System.Data;
using System.Data.OleDb;
using System.Web;
using System.Web.UI;
using System.Configuration;
namespace Com.LXJ.Database
{
    /// <summary>
    /// conn 的摘要說明。
    /// </summary>
    public class ConnDbForAcccess
    {
        /// <summary>
        /// 連接數據庫字符串
        /// </summary>
        private string connectionString;
        /// <summary>
        /// 存儲數據庫連接(保護類,只有由它派生的類才能訪問)
        /// </summary>
        protected OleDbConnection Connection;
        /// <summary>
        /// 構造函數:數據庫的默認連接
        /// </summary>
        public ConnDbForAcccess()
        {
            string connStr;
            connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString.ToString();
           // connStr = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString(); //從web.config配置中讀取
            connectionString = connStr;
            //connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Request.PhysicalapplicationPath + connStr;
           // connectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();
            //
            Connection = new OleDbConnection(connectionString);
        }
        /// <summary>
        /// 構造函數:帶有參數的數據庫連接
        /// </summary>
        /// <param name="newConnectionString"></param>
        public ConnDbForAcccess(string newConnectionString)
        {
            //connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + HttpContext.Current.Request.PhysicalApplicationPath + newConnectionString;
            connectionString = newConnectionString;
            Connection = new OleDbConnection(connectionString);
        }
        /// <summary>
        /// 獲得連接字符串
        /// </summary>
        public string ConnectionString
        {
            get
            {
                return connectionString;
            }
        }
        /// <summary>
        /// 執行SQL語句沒有返回結果,如:執行刪除、更新、插入等操作
        /// </summary>
        /// <param name="strSQL"></param>
        /// <returns>操作成功標志</returns>
        public bool ExeSQL(string strSQL)
        {
            bool resultState = false;
            Connection.Open();
            OleDbTransaction myTrans = Connection.BeginTransaction();
            OleDbCommand command = new OleDbCommand(strSQL, Connection, myTrans);
            try
            {
                command.ExecuteNonQuery();
                myTrans.Commit();
                resultState = true;
            }
            catch
            {
                myTrans.Rollback();
                resultState = false;
            }
            finally
            {
                Connection.Close();
            }
            return resultState;
        }
        /// <summary>
        /// 執行SQL語句返回結果到DataReader中
        /// </summary>
        /// <param name="strSQL"></param>
        /// <returns>dataReader</returns>
        private OleDbDataReader ReturnDataReader(string strSQL)
        {
            Connection.Open();
            OleDbCommand command = new OleDbCommand(strSQL, Connection);
            OleDbDataReader dataReader = command.ExecuteReader();
            Connection.Close();
            return dataReader;
        }
        /// <summary>
        /// 執行SQL語句返回結果到DataSet中
        /// </summary>
        /// <param name="strSQL"></param>
        /// <returns>DataSet</returns>
        public DataSet ReturnDataSet(string strSQL)
        {
            Connection.Open();
            DataSet dataSet = new DataSet();
            OleDbDataAdapter OleDbDA = new OleDbDataAdapter(strSQL, Connection);
            OleDbDA.Fill(dataSet, "objDataSet");
            Connection.Close();
            return dataSet;
        }
        /// <summary>
        /// 執行一查詢語句,同時返回查詢結果數目
        /// </summary>
        /// <param name="strSQL"></param>
        /// <returns>sqlResultCount</returns>
        public int ReturnSqlResultCount(string strSQL)
        {
            int sqlResultCount = 0;
            try
            {
                Connection.Open();
                OleDbCommand command = new OleDbCommand(strSQL, Connection);
                OleDbDataReader dataReader = command.ExecuteReader();
                while (dataReader.Read())
                {
                    sqlResultCount++;
                }
                dataReader.Close();
            }
            catch
            {
                sqlResultCount = 0;
            }
            finally
            {
                Connection.Close();
            }
            return sqlResultCount;
        }
    }//
}//
 好了,數據庫訪問、數據庫操作的公用類完成了,詳細代碼意義大家自己看吧,這些屬于C# 語法知識了,現在可以編譯生成項目了,編譯完后把項目的dll文件Com.LXJ.dll拷貝到Example項目下的bin目錄中,然后在項目Example中引入Com.LXJ.dll即可。稍后介紹如何使用它,休息一下,喝口水,呵呵.....
新聞熱點
疑難解答