程式設計實踐設計
報告課題名稱:基於mfc與access資料庫的學生管理系統
學生姓名:
班級:2012211109
班內序號:26
學號:2012210270
日期:2014.5.31
1. 課題概述
1.1課題目標和主要內容
本課題中主要使用的工具mfc,在vs2010平台下進行開發。通過ado庫連線到筆者電腦中的系統資料庫並通過access database檢視資料庫同步與修改情況並演示。
實驗內容:
● 實現基本的學生管理系統的功能;
● 實現程式與access資料庫同步,可以進行資訊修改、新增使用者等功能;
● 基於c++物件導向實現不同類之間的關聯呼叫
實驗目標:
● 理解mfc應用程式的執行機制;
● 掌握使用mfc構建windows應用程式的基本結構及程式設計的基本方法;
● 理解和掌握mfc應用程式訊息處理機制及應用;
● 掌握mfc與資料庫相連的方法,建立乙個簡單的學生管理系統。
1.2系統的主要功能
功能描述:
一、 學生部分:可以使用自己的學號及密碼登入學生管理系統,並查詢自己的成績。
二、 教師部分:使用賬號和密碼登入學生管理系統,進行學生成績檢視、錄入及修改。
三、 管理員部分:可以檢視使用者及使用者許可權,新增使用者以及修改使用者許可權。
2. 系統設計
2.1 系統總體框架
系統框架圖如下:
設計思想:
分為mfc程式部分,連線部分和資料庫部分。
根據功能直接操縱對話方塊新增控制項,進而設計相應函式,呼叫相應類來實現功能;
然後通過呼叫ado庫中的函式來建立與access資料庫的連線。
2.2 系統詳細設計
[1] 模組劃分圖及描述
學生功能模組圖
教師功能模組圖
管理員功能模組圖
[2] 類關係圖及描述
以上這些派生類是這個程式所用到的主要類。
其中,cstudent2dlg對應著登入介面對話方塊的類;
cteacherdlg對應著教師登入進去所顯示的對話方塊的類;
cstudentdlg對應著學生登入進去所顯示的對話方塊的類;
cadministratordlg對應著管理員登入進去所顯示的對話方塊的類;
其他類也分別對應著實現某個功能所顯示的對話方塊的類。
[3] 程式流程圖及描述
[4] 儲存結構
mfc中的資料儲存在列表控制項中,指標型別為lpcstr;
匯出資料庫時搜尋出來的資料儲存型別主要是cstring,用來儲存各種從資料庫中獲得的資訊
2.3 關鍵演算法分析
(1)初始化操作,即連線資料庫
[1]演算法功能:實現主介面的初始化工作,建立與資料庫的連線
[2]時間、空間複雜度o(1)
[3]**分析
bool cstudent2dlg::oninitdialog()
}// 設定此對話方塊的圖示。當應用程式主視窗不是對話方塊時,框架將自動
// 執行此操作
seticon(m_hicon, true設定大圖示
seticon(m_hicon, false設定小圖示
// todo: 在此新增額外的初始化**
try}
catch(_com_error e)//捕捉異常
return true; // 除非將焦點設定到控制項,否則返回 true
} }
}分析:
連線資料庫 ado最重要的三個物件有三個:連線物件(connection)、命令物件(command)和記錄集物件(recordset)。在使用這三個物件的時候,需要定義與之相對應的智慧型指標,分別為_connectionptr、_commandptr、_recordsetptr。
hresult 是一種簡單的資料型別,通常被屬性和 atl 用作返回值。
返回值:如果成功返回新影象的索引,否則返回-1。
(2) 獲取登入資訊,分析登入許可權的演算法
[1] 時間複雜度、空間複雜度o(n)
[2] **分析
void cstudent2dlg::onbnclickedok()
catch(_com_error*e)//捕捉異常
//獲取對話方塊資料num pass,對賬戶進行判斷登入
updatedata(true);
if(numpass == "")
_variant_t var; //就可以方便的把c++型別變數轉換成com中的變數了。
cstring strnum,strpass,stradm;
m_precordset->movefirst();//移到首條記錄
while(!m_precordset->adoeof)
if(m_precordset->adoeof)
afxmessagebox("賬號錯誤,請重試");
else
首先用cstring型別的num和pass分別記錄從編輯框中獲取的使用者輸入的賬號和密碼,再分別於資料庫中admin3這張表中的賬號和密碼比對,如果有該條符合條件的記錄,則讀取資料庫中對應那條記錄中的admin即許可權項,再分別呼叫與之匹配的類物件,進入到相對應的使用者介面當中去。
北郵程式設計實踐報告mfc畫圖
程式設計實踐設計 報告課題名稱 簡單畫圖程式的設計與實現 學生姓名 班級 班內序號 學號 日期 課題概述 1.1課題目標和主要內容 該軟體功能與windows下附件中的畫圖軟體有相似功能。本程式是在vc2010平台上用mfc所編。繪製方面的功能主要包括繪製各種圖元,包括直線 矩形 橢圓 扇形 連續線...
學生資訊管理系統程式設計
1 軟體開發目的 該軟體主要是實現對學生基本資訊進行系統化的管理,首先可以對學生基本資訊進行錄入和訪問,其次可以瀏覽學生的相關資訊,然後可以刪除和插入學生的相關資訊,還有就是可按學號或按學生姓名查詢此學生的相關資訊。由此來系統化管理學生基本資訊,並達到簡易操作的目的。2 功能分析說明圖 3 各項功能...
學生成績管理系統程式設計
要求 設計乙個學生成績管理資訊系統,編寫系統設計報告,內容包括 1 系統概述 系統目標 系統主要功能 輸入 輸出 編輯 列印 查詢 2 系統設計規範 系統名稱 檔案命名規範 資料庫 表 字段命名規範 3 總體結構設計 系統功能結構圖 子系統及模組功能說明 子系統流程圖 畫功能模組結構圖 計算機網路系...