基于.NET平臺的Windows編程實戰(四)—— 數據庫操作類的編寫

作者: Asidy  來源: 博客園  發布時間: 2009-06-05 11:41  閱讀: 3880 次  推薦: 0   原文鏈接   [收藏]  
摘要:大家都知道本系統的正常運行少不了數據庫操作這一塊,且其在本系統中具有決定性作用,可以說沒有它的操作系統將無法運行,故在本節課程中,專門把針對數據庫的操作類拿出來講講,以便大家更加容易理解后面的課程。

系列文章導航:

基于.NET平臺的Windows編程實戰(一)——前言

基于.NET平臺的Windows編程實戰(二)—— 需求分析與數據庫設計

基于.NET平臺的Windows編程實戰(四)—— 數據庫操作類的編寫

基于.NET平臺的Windows編程實戰(五)—— 問卷管理功能的實現

基于.NET平臺的Windows編程實戰(六)—— 題目管理功能的實現

 

大家都知道本系統的正常運行少不了數據庫操作這一塊,且其在本系統中具有決定性作用,可以說沒有它的操作系統將無法運行,故在本節課程中,專門把針對數據庫的操作類拿出來講講,以便大家更加容易理解后面的課程。

好,進入正題……

首先,我們來新建一個類,方法如下:

打開上一節課我們新建的QuestionnaireSystem項目,右擊項目名,在出現的對話框中選擇“添加”à“類”,在彈出的“添加新項”中選擇“類”,并在下面的“名稱”中輸入DbOperate”,點“添加”,如下圖4-1所示:

 

OK,這樣我們的DbOperate類文件就創建好了,但里面還是空白的,所以我們下面就一起來編寫相應的方法吧。
 

既然要對數據庫進行操作,我們先要做的第一件事當然是要寫個方法來打開數據庫了。因為我們用的是Access2003數據庫,所以我們得首先要using 進一個System.Data.OleDb 類庫及一個System.Data 類庫,方法:在新建的DbOperate文件的最上面,也就是寫有幾個using …… 地方,寫入如下內容:

 

using System.Data;

using System.Data.OleDb;

 

其次,我們需要定義如下二個數據庫操作對象:

 

protected OleDbConnection dbconn;//定義數據庫連接對象

protected OleDbCommand dbcomm = new OleDbCommand();//定義數據庫操作對象 

 

接下來,我們再寫一個打開數據庫連接的方法:

 

/// <summary>
        /// 打開數據庫
         /// </summary>
        /// <returns></returns>
        protected void CreateDbConn()
        {
            try
            {//捕獲連接異常
                string dbpath = @"DataBase\Lj_QuestionnaireSys.mdb";//設置數據庫路徑,如連接有問
題請在前面加上"..\..\",但在發布時要去掉前面的"..\..\"
                dbconn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
" + dbpath);//初始化數據庫連接對象
                dbcomm.Connection = dbconn;//設置數據庫操作對象使用此dbconn對象
                dbconn.Open();//打開數據庫連接
            }
            catch (OleDbException) //如果出現數據庫連接異常,則關閉數據庫連接并彈出提示框
            {
                this.CloseDbConn();//關閉數據庫連接
                MessageBox.Show("數據連接錯誤!可能是數據庫被刪除了11,請聯系相關技術人員!", "操作提示"
MessageBoxButtons.OK, MessageBoxIcon.Information);
                // Console.Write(dbex.Message);

            }
            catch (Exception) //如果出現其他異常,則關閉數據庫連接并彈出提示框
            {
                this.CloseDbConn(); //關閉數據庫連接
                MessageBox.Show("數據連接錯誤!可能是數據庫被刪除了,請聯系相關技術人員!", "操作提示"
MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

 

數據庫打開了,總不能讓其長期開著吧!故我們還得寫一關閉的方法:

 

        /// 關閉數據庫
        /// 
        protected void CloseDbConn()
        {
            if (dbconn.State == ConnectionState.Open) //如果數據庫為打開狀態,則關閉
            {
                dbconn.Close();//關閉數據庫連接
            }
            dbconn.Dispose();//釋放連接資源
            dbcomm.Dispose();//釋放操作資源
        }

 

 

 

好,至此,“開門”[打開數據庫]與“關門”[關閉數據庫]的方法都搞定了,下面就讓我們設法在“開門”后“關門”前偷偷的躲進去做點實事吧,即寫一些方法來讀取或更新數據:

 

Code

 

OK!到此,整個類算是完工了,雖然不好[沒進行性能方面的優化,也沒引入存儲過程的操作等等],但對于基本的操作已經夠用的了,故在此不作這方面的討論;
    在后期的其它系列課程中,我打算專門寫一系列針對數據庫操作優化類的課程,到那時我們再拿出來一起討論^_^

本課就先到此吧,謝謝……

附,本課程源碼下載

0
0
 
標簽:WinForm
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()