![C 圖書館管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第1頁](http://file4.renrendoc.com/view12/M03/06/18/wKhkGWcgORSAP4hSAABqPyNzMsE345.jpg)
![C 圖書館管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第2頁](http://file4.renrendoc.com/view12/M03/06/18/wKhkGWcgORSAP4hSAABqPyNzMsE3452.jpg)
![C 圖書館管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第3頁](http://file4.renrendoc.com/view12/M03/06/18/wKhkGWcgORSAP4hSAABqPyNzMsE3453.jpg)
![C 圖書館管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第4頁](http://file4.renrendoc.com/view12/M03/06/18/wKhkGWcgORSAP4hSAABqPyNzMsE3454.jpg)
![C 圖書館管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第5頁](http://file4.renrendoc.com/view12/M03/06/18/wKhkGWcgORSAP4hSAABqPyNzMsE3455.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
校驗(yàn):_____________日期:_____________
校驗(yàn):_____________日期:_____________
C++圖書館管理系統(tǒng)課程設(shè)計(jì)報(bào)告目錄摘要·····························21.圖書管理系統(tǒng)概述················3·····3···············42.圖書管理系統(tǒng)詳細(xì)設(shè)計(jì)·············5········5···················5·····5································5········73.課程設(shè)計(jì)總結(jié)和體會··············19摘要圖書館管理系統(tǒng)創(chuàng)建基于MFCAPPWizard[exe],利用SQLSERVE2000和MFCODBC進(jìn)行數(shù)據(jù)庫的連接,在可視化的界面上進(jìn)行用戶名、圖書及借書卡的查詢、添加、修改、刪除,對數(shù)據(jù)庫表內(nèi)的信息列表進(jìn)行操作。圖書館管理系統(tǒng)主要完成了用戶登錄功能、新建/刪除用戶功能、用戶管理功能,對數(shù)據(jù)庫內(nèi)圖書、借書卡和用戶信息進(jìn)行查詢、添加、刪除、修改功能。圖書館管理系統(tǒng)設(shè)計(jì)是有下列幾步完成的:首先對整體功能進(jìn)行分析,開始是用戶登錄,登陸成功后顯示主界面,其分為圖書資料、讀者資料、借書管理、還書管理和退出五個(gè)菜單;第二步是對五個(gè)菜單繼續(xù)劃分成具體的類進(jìn)行實(shí)現(xiàn);第三步是根據(jù)課程設(shè)計(jì)的要求在數(shù)據(jù)庫內(nèi)的建立具體的表,并且進(jìn)行連接,及對數(shù)據(jù)庫數(shù)據(jù)庫內(nèi)容的操作,與此同時(shí)完成界面的退出操作;第四步是對圖書館管理系統(tǒng)進(jìn)行的全面優(yōu)化,修改不足。關(guān)鍵詞:MFC,數(shù)據(jù)庫,圖書,管理1.圖書管理系統(tǒng)概述圖書館管理系統(tǒng)的功能為讀者提供借書、還書和查詢所需圖書及圖書、讀者卡的管理等功能。圖書館管理系統(tǒng)的功能模塊有:(1)登錄界面只有管理員才能使用全部功能,更好的保護(hù)圖書館內(nèi)的一些信息不被破壞。(2)讀者資料能實(shí)現(xiàn)對讀者的顯示、讀者信息增加、讀者查詢、讀者信息修改和讀者信息刪除功能。(3)圖書資料能實(shí)現(xiàn)對圖書顯示、圖書信息增加、圖書查詢、圖書信息修改和圖書信息刪除功能。(4)借書管理可與數(shù)據(jù)庫中的圖書信息表連接實(shí)現(xiàn)借書的功能。(5)還書管理可與數(shù)據(jù)庫中的圖書信息表連接實(shí)現(xiàn)還書的功能(6)退出退出程序,結(jié)束運(yùn)行。通過SQLserver建立一個(gè)圖書館管理系統(tǒng)的數(shù)據(jù)庫,在控制面板的管理工具上用手動(dòng)方式添加數(shù)據(jù)源進(jìn)行連接。而與數(shù)據(jù)表的連接采用記錄集的形式一一建立連接,可以進(jìn)行圖書資料和讀者資料的管理,圖書資料管理包括圖書信息增加、圖書查詢、圖書信息修改和圖書信息刪除四項(xiàng),讀者資料管理管理包括讀者信息增加、讀者查詢、讀者信息修改和讀者信息刪除。用ODBC語言將數(shù)據(jù)庫與C++連接起來,首先是登錄界面,只有管理員才可進(jìn)入。登陸成功后,管理員可在系統(tǒng)界面進(jìn)行讀者資料、圖書資料、借書管理、還書管理等功能,通過對話框的跳轉(zhuǎn)實(shí)現(xiàn)借書、還書、圖書新增、查詢等功能。在每個(gè)對話框都可實(shí)現(xiàn)新增、查詢、刪除、修改等功能順利的對圖書館進(jìn)行管理。程序分為多個(gè)小模塊,通過調(diào)用實(shí)現(xiàn)各種功能,增強(qiáng)了程序的可建設(shè)性。程序開始程序開始登錄界面面還書管理借書管理讀者資料圖書資料借書確定增修刪查讀者顯示系統(tǒng)界面面增修刪查圖書顯示程序結(jié)束退出2.圖書管理系統(tǒng)詳細(xì)設(shè)計(jì)新建數(shù)據(jù)庫(SQLserver)新建數(shù)據(jù)庫名為library,然后在數(shù)據(jù)庫下建立五個(gè)表,分別為BOOK、BORROW、CLERK、HISTORY、READER。其中,BOOK是存放圖書信息的,BORROW是存放借書信息的,CLERK是存放管理員信息的,READER是存放讀者信息的。然后設(shè)計(jì)各個(gè)表中的字段,并定義主鍵,然后輸入數(shù)據(jù)即可。此次課程設(shè)計(jì)用ODBC語言將數(shù)據(jù)庫與C++連接,在連接之前應(yīng)創(chuàng)建數(shù)據(jù)源。在控制面板上打開管理工具,可以找到數(shù)據(jù)源(ODBC),添加數(shù)據(jù)源,可以創(chuàng)建不同類型的數(shù)據(jù)庫,此次設(shè)計(jì)用到了SQLServer,便選擇其,打開SQLServer中的服務(wù)管理器可找到服務(wù)器的名稱,將默認(rèn)數(shù)據(jù)庫改為自己的數(shù)據(jù)庫。點(diǎn)下一步直至完成。這樣,數(shù)據(jù)源創(chuàng)建成功了。其步驟如下所示eq\o\ac(○,1)雙擊新建的對話框或建立類向?qū)В缦聢D:eq\o\ac(○,2)點(diǎn)擊OK,則如下圖所示:eq\o\ac(○,3)在所示對話框中輸入Name,然后Baseclass中選擇CRecordset,點(diǎn)擊OK,出現(xiàn)下圖:eq\o\ac(○,4)既連接數(shù)據(jù)源,注意選擇記錄集類型為Dynaset。點(diǎn)擊OK,出現(xiàn)下圖:eq\o\ac(○,5)eq\o\ac(○,1)登錄函數(shù)voidCLoginDlg::OnConfirm()//登錄函數(shù){ //TODO:Addyourcontrolnotificationhandlercodehere CClerkDataSetmrsDataSet;/*聲明記錄集*/ CStringmSqlStr;UpdateData(TRUE);//將相應(yīng)控件上的值反應(yīng)到變量上 { AfxMessageBox("請正確輸入用戶名!"); return; }mSqlStr="SELECT*FROMCLERKWHERENAME='";//查詢數(shù)據(jù)庫中表CLERK中名字是輸入的 mSqlStr=mSqlStr+m_strName; mSqlStr=mSqlStr+"'ANDPASSWORD='"; mSqlStr=mSqlStr+m_strPassword; mSqlStr=mSqlStr+"'"; { AfxMessageBox("CLERK表打開失??!"); return; } { //Openallfunctionforuser CDialog::OnOK(); } else { AfxMessageBox("登錄失敗,請重新輸入!"); return; } }登錄界面為登錄成功為eq\o\ac(○,2)圖書資料中的查詢函數(shù)voidCBookDlg::OnEnquery(){ //TODO:Addyourcontrolnotificationhandlercodehere UpdateData(TRUE); { DisplayRecord(); SetButtonState(); return; } BOOLmAll=FALSE; { mAll=TRUE; } { if(mAll) { } else { } } DisplayRecord(); SetButtonState();}eq\o\ac(○,3)圖書資料中的修改函數(shù)voidCBookDlg::OnEdit(){ //TODO:Addyourcontrolnotificationhandlercodehere m_bEdit=TRUE; SetButtonState(); SetTextState(); CWnd*pWnd; pWnd=GetDlgItem(IDC_BOOKNAME); pWnd->SetFocus();}eq\o\ac(○,4)圖書資料中的刪除函數(shù)voidCBookDlg::OnDelete(){ //TODO:Addyourcontrolnotificationhandlercodehere DisplayRecord(); SetButtonState(); }eq\o\ac(○,5)圖書資料中的增加函數(shù)voidCBookDlg::OnNew(){ //TODO:Addyourcontrolnotificationhandlercodehere m_strBookID=""; m_strBookName=""; m_strAuthor=""; m_strPress=""; m_strFlag="Y"; UpdateData(FALSE); m_bEdit=TRUE; m_bAdd=TRUE; SetButtonState(); SetTextState(); CWnd*pWnd; pWnd=GetDlgItem(IDC_BOOKID); pWnd->SetFocus();}eq\o\ac(○,6)圖書資料中的保存函數(shù)voidCBookDlg::OnSave()//保存書籍{ //TODO:Addyourcontrolnotificationhandlercodehere UpdateData(TRUE); { AfxMessageBox("請輸入相應(yīng)數(shù)據(jù)!"); return; } if(m_bAdd) { } else { } m_bAdd=FALSE; m_bEdit=FALSE; DisplayRecord(); SetButtonState();SetTextState();}圖書資料界面如下圖所示:讀者資料界面如下圖:讀者資料中的函數(shù)與圖書資料中的函數(shù)基本一致。eq\o\ac(○,7)借書函數(shù)voidCBorrowDlg::OnConfirm(){//TODO:Addyourcontrolnotificationhandlercodehere BOOLm_bCanBorrow; BOOLm_bCanLendOut; m_bCanBorrow=FALSE; m_bCanLendOut=FALSE; CStringmSqlStr;UpdateData(TRUE); { AfxMessageBox("數(shù)據(jù)表打開錯(cuò)誤!"); return; } { { mSqlStr="SELECT*FROMBORROWWHEREREADER_ID='"+m_strReaderID; mSqlStr=mSqlStr+"'"; { AfxMessageBox("數(shù)據(jù)表打開錯(cuò)誤!"); return;} m_bCanBorrow=TRUE; } }if(!m_bCanBorrow) { AfxMessageBox("讀者不能借書!"); return; }mSqlStr="SELECT*FROMBOOKWHEREBOOK_ID='"+m_strBookID; mSqlStr=mSqlStr+"'"; { AfxMessageBox("數(shù)據(jù)表打開錯(cuò)誤!"); return; } { { m_bCanLendOut=TRUE; } else { AfxMessageBox("此書不外借!"); return; } } else { AfxMessageBox("無此書!"); return; }CStringm_strUserID;COleDateTimem_CurrentTime=COleDateTime::GetCurrentTime(); CStringstrTime; mSqlStr="INSERTINTOBORROW(READER_ID,BOOK_ID,BORROW_DATE,B_CLERK_ID)VALUES('"; mSqlStr=mSqlStr+m_strReaderID; mSqlStr=mSqlStr+"','"; mSqlStr=mSqlStr+m_strBookID; mSqlStr=mSqlStr+"','"; mSqlStr=mSqlStr+strTime; mSqlStr=mSqlStr+"','"; mSqlStr=mSqlStr+m_strUserID; mSqlStr=mSqlStr+"')"; CDatabasemDB; { AfxMessageBox("無法打開數(shù)據(jù)庫!"); return; } try { }catch(CDBExceptione) { AfxMessageBox("執(zhí)行錯(cuò)!"); return; } AfxMessageBox("操作成功!");}voidCBorrowDlg::OnCancel(){ //TODO:Addyourcontrolnotificationhandlercodehere CDialog::OnCancel();}借書界面eq\o\ac(○,8)還書函數(shù)voidCReturnDlg::OnConfirm(){ intrs; CWnd*pWnd; CStringm_strtmp;rs=QryBorrow(); if(rs==1) { if(::MessageBox(this->m_hWnd,m_strtmp,"提示",MB_YESNO)==IDYES) { Insert_History(); Delete_Borrow(); SetTxtNull(); } else { return; } } elseif(rs==2) { if(::MessageBox(this->m_hWnd,"確認(rèn)還書?","提示",MB_YESNO)==IDYES) { Insert_History(); Delete_Borrow(); SetTxtNull(); } else { return; }} elseif(rs==0) { if(m_Book_ID=="") return; ::MessageBox(this->m_hWnd,"該書號信息不存在!","警告",MB_OK); } pWnd=GetDlgItem(IDC_BOOK_ID); pWnd->SetFocus();}還書界面eq\o\ac(○,8)退出函數(shù)voidCLibraryDlg::OnButtonGoodbye(){//TODO:Addyourcontrolnotificationhandlercodehere intnResponse=MessageBox("真
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 品牌營銷推廣策略指南
- 技術(shù)產(chǎn)品銷售合同
- 華為勞動(dòng)合同管理制度
- 遺傳基因技術(shù)服務(wù)合同
- 外貿(mào)實(shí)務(wù)操作作業(yè)指導(dǎo)書
- 倉儲配送合同
- 智能工廠建設(shè)與運(yùn)營作業(yè)指導(dǎo)書
- 2025年來賓貨運(yùn)從業(yè)資格證模擬考試題庫
- 2025年陜西貨運(yùn)從業(yè)資格考試模擬考試題庫及答案大全
- 2024年七年級歷史上冊第一單元史前時(shí)期:中國境內(nèi)人類的活動(dòng)第3課遠(yuǎn)古的傳說教學(xué)設(shè)計(jì)新人教版
- mil-std-1916抽樣標(biāo)準(zhǔn)(中文版)
- 《社區(qū)康復(fù)》課件-第七章 腦癱患兒的社區(qū)康復(fù)實(shí)踐
- 城鄉(xiāng)環(huán)衛(wèi)一體化內(nèi)部管理制度
- 廣匯煤炭清潔煉化有限責(zé)任公司1000萬噸年煤炭分級提質(zhì)綜合利用項(xiàng)目變更環(huán)境影響報(bào)告書
- 小學(xué)數(shù)學(xué)六年級解方程練習(xí)300題及答案
- 大數(shù)據(jù)在化工行業(yè)中的應(yīng)用與創(chuàng)新
- 光伏十林業(yè)可行性報(bào)告
- 小學(xué)綜合實(shí)踐《我做環(huán)保宣傳員 保護(hù)環(huán)境人人有責(zé)》
- 鋼煤斗內(nèi)襯不銹鋼板施工工法
- 公路工程安全風(fēng)險(xiǎn)辨識與防控手冊
- 供應(yīng)商評估報(bào)告范本
評論
0/150
提交評論