C sharp 圖書(shū)管理系統(tǒng)課程設(shè)計(jì)

上傳人:仙*** 文檔編號(hào):129531080 上傳時(shí)間:2022-08-03 格式:DOC 頁(yè)數(shù):40 大?。?59KB
收藏 版權(quán)申訴 舉報(bào) 下載
C sharp 圖書(shū)管理系統(tǒng)課程設(shè)計(jì)_第1頁(yè)
第1頁(yè) / 共40頁(yè)
C sharp 圖書(shū)管理系統(tǒng)課程設(shè)計(jì)_第2頁(yè)
第2頁(yè) / 共40頁(yè)
C sharp 圖書(shū)管理系統(tǒng)課程設(shè)計(jì)_第3頁(yè)
第3頁(yè) / 共40頁(yè)

本資源只提供3頁(yè)預(yù)覽,全部文檔請(qǐng)下載后查看!喜歡就下載吧,查找使用更方便

10 積分

下載資源

資源描述:

《C sharp 圖書(shū)管理系統(tǒng)課程設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《C sharp 圖書(shū)管理系統(tǒng)課程設(shè)計(jì)(40頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 鄭州科技學(xué)院 C#課程設(shè)計(jì) 設(shè)計(jì)(論文)題目: 圖書(shū)管理系統(tǒng) 所 在 院: 信息工程學(xué)院 專 業(yè) 班 級(jí): 10計(jì)算機(jī)科學(xué)與技術(shù)2班 學(xué) 生 姓 名: 學(xué) 號(hào): 201015043 指 導(dǎo) 教 師: 2013年6月5日 目錄 目錄 1 1

2、. 緒論 2 1.1 課題研究的背景和意義 2 1.2 系統(tǒng)介紹 2 1.3 開(kāi)發(fā)工具及運(yùn)行環(huán)境 3 2. 系統(tǒng)分析 5 2.1 需求分析 5 2.2 可行性分析 5 3. 系統(tǒng)設(shè)計(jì) 6 3.1 設(shè)計(jì)目標(biāo) 6 3.2 數(shù)據(jù)庫(kù)設(shè)計(jì) 6 3.2.1 概念結(jié)構(gòu)設(shè)計(jì) 6 3.2.2 邏輯結(jié)構(gòu)設(shè)計(jì) 8 3.3.1 項(xiàng)目規(guī)劃 10 3.3.2 系統(tǒng)功能結(jié)構(gòu)圖 10 4. 系統(tǒng)主要功能模塊實(shí)現(xiàn) 11 4.1 登錄界面 11 4.2 主控制界面 11 4.3 圖書(shū)信息維護(hù) 12 4.4 出版社信息管理 14 4.5 圖書(shū)借閱界面 14 5. 設(shè)計(jì)總結(jié) 18 6. 參考

3、文獻(xiàn) 19 7. 致 謝 20 8. 附錄 20 1. 緒論 1.1 課題研究的背景和意義 隨著社會(huì)的進(jìn)步與發(fā)展,資源高效利用提高效率越來(lái)越受到人們的關(guān)注.圖書(shū)管理也提出這樣的要求,因此圖書(shū)管理的數(shù)字化越來(lái)越受到大眾的青睞. 傳統(tǒng)圖書(shū)管理方式存在一些弊端,比如需要人員較多,工作量很大,管理資料保存查詢不方便等.圖書(shū)管理系統(tǒng)是現(xiàn)代圖書(shū)管理工具中的重要組成部分.現(xiàn)代化的圖書(shū)管理需要有現(xiàn)代化的管理系統(tǒng),采用計(jì)算機(jī)管理信息系統(tǒng)已成為圖書(shū)管理科學(xué)化和現(xiàn)代化的一個(gè)重要特征,給圖書(shū)管理帶來(lái)極大的便利.近年來(lái)圖書(shū)事業(yè)的發(fā)展,以及軟件開(kāi)發(fā)的逐步成熟,圖書(shū)管理系統(tǒng)使得原來(lái)繁重而易出錯(cuò)的圖

4、書(shū)管理變得簡(jiǎn)單而有條理,我所開(kāi)發(fā)這一圖書(shū)管理系統(tǒng)的目的在于能夠節(jié)省大量的人員成本,使得管理變得方便可靠。它廣泛應(yīng)用于圖書(shū)館管理,力求開(kāi)發(fā)出一套嚴(yán)謹(jǐn)、可靠、功能完整的管理系統(tǒng)。使用圖書(shū)管理系統(tǒng)能夠很好的解決了傳統(tǒng)圖書(shū)管理的問(wèn)題.人員需求能夠減少,工作效率明顯提高,管理更加便利. 1.2 系統(tǒng)介紹 此圖書(shū)管理系統(tǒng)主要采用的是VisualStudio2008做為前臺(tái)開(kāi)發(fā)工具以及SQL Server 2005做為后臺(tái)支持。以操作便捷、界面友好、靈活、實(shí)用為出發(fā)點(diǎn),設(shè)計(jì)采用了模塊化設(shè)計(jì)方法。系統(tǒng)實(shí)現(xiàn)了以下基本功能: 圖書(shū)借閱:此功能實(shí)現(xiàn)圖書(shū)的借閱。 圖書(shū)查詢:可以實(shí)現(xiàn)圖書(shū)的查詢。 歸還圖書(shū):實(shí)

5、現(xiàn)圖書(shū)的歸還。 系統(tǒng)管理:實(shí)現(xiàn)了對(duì)讀者的管理。 出版社管理:完成對(duì)出版社的管理。 圖書(shū)管理系統(tǒng)具有如下一些特點(diǎn): 方便性:讀者以及工作人員能夠及時(shí)了解圖書(shū)情況,以便完成需要的工作。 穩(wěn)定性:系統(tǒng)性能穩(wěn)定。 操作性強(qiáng):由于系統(tǒng)及面簡(jiǎn)潔,使用容易很便于用戶操作。 1.3 開(kāi)發(fā)工具及運(yùn)行環(huán)境 所用到的開(kāi)發(fā)工具有:Microsoft Visual Studio2008(C#) 和SQL Server 2005。 Visual C#是功能最為強(qiáng)大可視化開(kāi)發(fā)工具,它不僅支持傳統(tǒng)的軟件開(kāi)發(fā)方法,更重要的是它能支持面向?qū)ο?、可視化的開(kāi)發(fā)風(fēng)格。因此Visual C#又稱作是一個(gè)集成開(kāi)發(fā)工具,

6、它提供了軟件代碼自動(dòng)生成和可視化的資源編輯功能。 ?? Visual C#具有的優(yōu)點(diǎn):提供了面向?qū)ο蟮膽?yīng)用程序框架MFC(Microsoft Foundation Class),簡(jiǎn)化了程序員的編程工作,提高了模塊的可重用性;提供了基于CASE技術(shù)的可視化軟件的自動(dòng)生成和維護(hù)工具Visual Studio等,實(shí)現(xiàn)了直觀、可視的程序設(shè)計(jì)風(fēng)格,方便地編寫和管理各種類,維護(hù)程序的源代碼。 Visual C#中可用的數(shù)據(jù)訪問(wèn)對(duì)象接口有三種:ODBC(Open Database Connectity,開(kāi)發(fā)數(shù)據(jù)庫(kù)連接)、DAO(Data Access Objects,數(shù)據(jù)訪問(wèn)對(duì)象)及OLE DB(OL

7、E data Base,OLE數(shù)據(jù)庫(kù))。 1.ODBC(Open Database Connectivity,開(kāi)放數(shù)據(jù)庫(kù)連接) ? ODBC提供了應(yīng)用程序接口(API),使得任何一個(gè)數(shù)據(jù)庫(kù)都可以通過(guò)ODBC驅(qū)動(dòng)器與指定DBMC相聯(lián),用戶的程序就可以通過(guò)調(diào)用ODBC驅(qū)動(dòng)管理器中相應(yīng)的驅(qū)動(dòng)程序達(dá)到管理數(shù)據(jù)庫(kù)的目的。作為Microsoft Windows Open Standards Architecture(WOSA,Windows開(kāi)放式服務(wù)體系結(jié)構(gòu))的主要組成部分,ODBC一直沿用至今。 2.DAO(Data Access Objects,數(shù)據(jù)訪問(wèn)對(duì)象) ?? DAO 提供了一種通過(guò)程序

8、代碼創(chuàng)建和操縱數(shù)據(jù)庫(kù)的機(jī)制。多個(gè)DAO 對(duì)象構(gòu)成了一個(gè)體系結(jié)構(gòu),在這個(gè)結(jié)構(gòu)里,各個(gè)DAO 對(duì)象協(xié)同工作,通過(guò) Microsoft Jet 數(shù)據(jù)庫(kù)訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)和數(shù)據(jù)庫(kù)的結(jié)構(gòu)定義??梢栽L問(wèn)的數(shù)據(jù)庫(kù)類型主要有:Microsoft Jet 數(shù)據(jù)庫(kù)、ODBC 數(shù)據(jù)源、可安裝的ISAM數(shù)據(jù)庫(kù)。 DAO 是我們可以通過(guò)程序訪問(wèn)和操縱本地的或遠(yuǎn)程的數(shù)據(jù)和數(shù)據(jù)定義,管理數(shù)據(jù)庫(kù)中的對(duì)象或結(jié)構(gòu)。DAO 支持兩種不同的數(shù)據(jù)庫(kù)環(huán)境——稱為工作區(qū)(Workspace). Microsoft Jet Workspace ——這是一種使用Microsoft Jet 數(shù)據(jù)庫(kù)引擎來(lái)訪問(wèn)數(shù)據(jù)源的工作區(qū)。 ODBC Dir

9、ect Workspace ——這是一種使用 ODBC Direct 來(lái)直接訪問(wèn)一個(gè)ODBC 數(shù)據(jù)源,并繞過(guò)Microsoft Jet 數(shù)據(jù)庫(kù)引擎的工作區(qū)。可通過(guò)ODBC訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器,而無(wú)須安裝Microsoft Jet 數(shù)據(jù)庫(kù)引擎。 3.OLE DB(OLE data Base,OLE數(shù)據(jù)庫(kù))。 OLE DB試圖提高一種統(tǒng)一的數(shù)據(jù)訪問(wèn)接口,并能處理除了標(biāo)準(zhǔn)的關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)之外,還能處理包括郵件數(shù)據(jù)、Web上的文本或圖形、目錄服務(wù)(Directory Services),以及主機(jī)系統(tǒng)中的IMS和VSAM數(shù)據(jù)。OLE DB提供一個(gè)數(shù)據(jù)庫(kù)編程COM(組件對(duì)象模型)接口,使得數(shù)據(jù)的使用

10、者(應(yīng)用程序)可以使用同樣的方法訪問(wèn)各種數(shù)據(jù),而不用考慮數(shù)據(jù)的具體存儲(chǔ)地點(diǎn)、格式或類型。這個(gè)COM接口與ODBC相比,其健壯性和靈活性要高的多。但是,由于OLE DB的程序比較復(fù)雜,因而對(duì)于一般用戶來(lái)說(shuō)使用ODBC和DAO方式已能滿足一般數(shù)據(jù)庫(kù)處理的需要。 開(kāi)發(fā)及運(yùn)行環(huán)境包括硬件與軟件平臺(tái)。 硬件平臺(tái): CPU:P41.8GHz。 內(nèi)存:256MB以上。 軟件平臺(tái): 操作系統(tǒng):Windows XP/ Windows 2000。 數(shù)據(jù)庫(kù):SQL Server 2005。 分辨率:最佳效果1024×768像素。 2. 系統(tǒng)分析 2.1 需求分析 通過(guò)調(diào)查,要求系統(tǒng)需要有以下功

11、能: 系統(tǒng)登錄 用戶管理 圖書(shū)管理 圖書(shū)借閱 圖書(shū)查詢 出版社管理 系統(tǒng)退出。 2.2 可行性分析 圖書(shū)管理系統(tǒng)使圖書(shū)管理走上了科學(xué)化、系統(tǒng)化管理道路。 (1)經(jīng)濟(jì)可行性 使用圖書(shū)管理系統(tǒng)能夠極大的節(jié)約圖書(shū)管理工作的運(yùn)行成本。主要體現(xiàn)在:使用圖書(shū)管理系統(tǒng)能夠減少工作人員數(shù)量,從而降低人力成本;實(shí)用圖書(shū)管理系統(tǒng)可以減少對(duì)管理資料維護(hù)的成本 (2)技術(shù)可行性 目前國(guó)內(nèi)外軟硬件產(chǎn)品和技術(shù)發(fā)展迅速.服務(wù)器,操作系統(tǒng)等相關(guān)資源技術(shù)容易獲得并有較大的選擇余地,而且在本系統(tǒng)軟硬件要求適中,因此現(xiàn)有條件在技術(shù)層面上完全可以滿足要求。 3. 系統(tǒng)設(shè)計(jì) 3.1 設(shè)計(jì)目標(biāo)

12、 本系統(tǒng)是針對(duì)圖書(shū)管理工作過(guò)程進(jìn)行設(shè)計(jì)的,主要實(shí)現(xiàn)如下目標(biāo): 合法用戶可以登錄此系統(tǒng); 讀者可以查詢、借閱、歸還圖書(shū)等; 工作人員可以對(duì)讀者、圖書(shū)進(jìn)行管理。 3.2 數(shù)據(jù)庫(kù)設(shè)計(jì) 3.2.1 概念結(jié)構(gòu)設(shè)計(jì) 將從需求分析中得到的數(shù)據(jù)信息抽象為概念模型,經(jīng)分析可得到數(shù)據(jù)庫(kù)的E-R模型。如圖所示。 圖書(shū) 名稱 作者 編號(hào) 出版期 價(jià)格 種類 出版社 圖1:圖書(shū)實(shí)體ER圖 出版社 電話 電子郵件 名稱 地址

13、 圖2:出版社實(shí)體ER圖 密碼 讀者 姓名 編號(hào) 專業(yè) 狀態(tài) 借書(shū)量 年齡 性別 院系 圖3:實(shí)體讀者ER圖 用戶 密碼 類型 編號(hào) 圖4:用戶實(shí)體ER圖 3.2.2 邏輯結(jié)構(gòu)設(shè)計(jì) 把上面的概念結(jié)構(gòu)轉(zhuǎn)化為關(guān)系模型,我們可以得到各實(shí)體的關(guān)系模式(關(guān)系的碼用下劃線標(biāo)出): 圖書(shū)(圖書(shū)編號(hào),圖書(shū)名稱,圖書(shū)作者,出版社,

14、出版日期,圖書(shū)價(jià)格,圖書(shū)種類) 出版社(出版社編號(hào),出版社地址,出版社電話,電子郵件) 讀者(讀者編號(hào),讀者名稱,密碼,讀者電話,電子郵件,借書(shū)數(shù)量) 用戶(用戶編號(hào),用戶密碼,用戶類型) 以下關(guān)系模式為讀者——圖書(shū)的關(guān)系模式: 借閱圖書(shū)(讀者編號(hào),圖書(shū)編號(hào),借閱日期,應(yīng)還日期,歸還日期,是否歸還) 從以上的關(guān)系模式我們可以得到數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)(二維表)。每個(gè)表格表示數(shù)據(jù)庫(kù)中的一個(gè)數(shù)據(jù)表。為了優(yōu)化數(shù)據(jù)表結(jié)構(gòu),部分字段采用代碼形式,以便與數(shù)據(jù)庫(kù)中的數(shù)據(jù)表對(duì)應(yīng)起來(lái)。根據(jù)以上分析,需要設(shè)計(jì)五個(gè)數(shù)據(jù)表來(lái)存放數(shù)據(jù)信息,這些表分別為圖書(shū)表,出版社表,讀者表,用戶表,借閱表。以下五個(gè)表分別是

15、這五個(gè)表的結(jié)構(gòu)設(shè)計(jì)。 表1 圖書(shū)表 編號(hào) 字段名 數(shù)據(jù)類型 說(shuō) 明 備 注 1 BookID Char(10) 圖書(shū)編號(hào) 主鍵 2 BookWriter Varchar(30) 圖書(shū)作者 3 BookName Varchar(20) 圖書(shū)名稱 4 BookPublish Varchar(50) 出版社 5 BookPublishDate Datetime 出版日期 6 BookPrice Float 圖書(shū)價(jià)格 7 BookSort Varchar(20) 圖書(shū)

16、類型 表2 出版社表 編號(hào) 字段名 數(shù)據(jù)類型 說(shuō) 明 備 注 1 PublishName Varchar(50) 出版社名稱 主鍵 2 PublishAddress Varchar(50) 出版社地址 3 PublishPhoneNO Varchar(15) 出版社電話 4 PublishEmail Varchar(30) 電子郵件 表3 讀者表 編號(hào) 字段名 數(shù)據(jù)類型 說(shuō) 明 備 注 1 ReaderID C

17、har(6) 讀者編號(hào) 主鍵 2 ReaderName Varchar(20) 讀者名稱 3 ReaderPassword Varchar(10) 讀者密碼 4 ReaderSex Varchar(15) 讀者性別 5 ReaderAge Varchar(50) 讀者年齡 6 ReaderDept Varchar(15) 讀者系別 7 readerzhuanye Varchar(15) 讀者專業(yè) 8 maxnumber int 借閱數(shù)量 9 islost Vchar(15) 是否超期

18、 表4 用戶表 編號(hào) 字段名 數(shù)據(jù)類型 說(shuō) 明 備 注 1 UserID Char(10) 用戶編號(hào) 主鍵 2 UserPassword Char(10) 用戶密碼 3 UserSort Varchar(10) 用戶類型 表5 借閱表 編號(hào) 字段名 數(shù)據(jù)類型 說(shuō) 明 備 注 1 ReaderID Char(6) 讀者編號(hào) 外鍵 2 BookID Char(10) 圖書(shū)編號(hào) 外鍵 3 BorrowDate Date

19、time 借書(shū)日期 4 ReturnDate Datetime 應(yīng)還日期 5 outTime Datetime 是否超期 3.3 總體設(shè)計(jì) 3.3.1 項(xiàng)目規(guī)劃 圖書(shū)管理系統(tǒng)是一個(gè)典型的數(shù)據(jù)庫(kù)應(yīng)用程序,由應(yīng)用程序和后臺(tái)數(shù)據(jù)庫(kù)兩部分構(gòu)成。 應(yīng)用程序 應(yīng)用程序主要包括登錄,用戶信息,讀者信息,圖書(shū)信息管理,借閱圖書(shū),綜合查詢,出版社信息,退出系統(tǒng)幾個(gè)部分組成。 數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)負(fù)責(zé)對(duì)圖書(shū)信息,用戶信息等數(shù)據(jù)的管理。 3.3.2 系統(tǒng)功能結(jié)構(gòu)圖 系統(tǒng)功能結(jié)構(gòu)如圖所示。

20、 圖5 系統(tǒng)功能結(jié)構(gòu)圖 4. 系統(tǒng)主要功能模塊實(shí)現(xiàn) 4.1 登錄界面 進(jìn)入系統(tǒng)必須經(jīng)過(guò)登錄,用戶輸入用戶名和密碼后,系統(tǒng)會(huì)查詢數(shù)據(jù)庫(kù)中的用戶表,如果用戶存在且密碼正確,則根據(jù)用戶的類型決定用戶可以進(jìn)行的操作。如果用戶類行為”管理員”,此時(shí)用戶類型為系統(tǒng)用戶,那么用戶可以使用系統(tǒng)所有的功能。如果用戶類型為“借閱者”,此時(shí)用戶為普通用戶,那么登錄后用戶不能進(jìn)行用戶信息管理等操作。如果用戶不存在或密碼錯(cuò)誤則提示用戶名或密碼錯(cuò)誤,并要求用戶重新輸入。下圖為系統(tǒng)登錄界面。 圖六 系統(tǒng)登錄界面 4.2 主控制界面 此界面是進(jìn)入相應(yīng)功能

21、模塊的入口。相應(yīng)功能是否可用取決于用戶的類型。單擊用戶信息按鈕時(shí)會(huì)彈出用戶信息管理對(duì)話框,再此對(duì)話框中可以完成用戶信息的管理。單擊其他按鈕時(shí)也會(huì)彈出相應(yīng)的對(duì)話框,以完成相應(yīng)的工作。每個(gè)按鈕單擊事件下均創(chuàng)建相應(yīng)窗體的實(shí)例,并調(diào)用方法ShowDialog()有模式顯示相應(yīng)界面。下圖為主控制界面。 圖七 主控制界面 4.3 圖書(shū)信息維護(hù) 在此界面用戶可以對(duì)圖書(shū)信息進(jìn)行管理,具體包含圖書(shū)信息的添加、修改、刪除等。具體實(shí)現(xiàn)代碼見(jiàn)附錄。單擊添加按鈕時(shí)文本框?qū)⒆優(yōu)榭捎?,編輯完以后單擊確定按鈕會(huì)將相應(yīng)的信息寫入到數(shù)據(jù)庫(kù)的“book”數(shù)據(jù)表中。如要要取消編輯的

22、信息可以單擊取消按鈕。單擊修改按鈕時(shí),各文本框時(shí)可編輯的,編輯好信息后,單擊確定按鈕,可以將修改后的寫入到“book”數(shù)據(jù)表中;單擊取消事會(huì)取消當(dāng)前的操作。單擊刪除按鈕會(huì)將當(dāng)前圖書(shū)信息從“book”數(shù)據(jù)表中刪除。下圖為圖書(shū)信息維護(hù)的界面。 圖八 圖書(shū)信息維護(hù)界面——查詢、刪除 圖九 圖書(shū)信息維護(hù)界面——添加 4.4 出版社信息管理 出版社信息管理界面使用戶可以完成出版社信息的添加,修改,刪除等操作。單擊添加按鈕以后,文本框?qū)⒖梢跃庉?,編輯好信息后,?/p>

23、擊確定按鈕,如信息無(wú)誤會(huì)將信息保存到PublishCompany數(shù)據(jù)表中。注意信息不能為空,如為空會(huì)出現(xiàn)錯(cuò)誤。修改和刪除出版社信息與添加信息相似。以下為出版社信息管理界面: 圖十 出版社信息管理界面 4.5 圖書(shū)借閱界面 圖書(shū)借閱界面使用戶完成圖書(shū)借閱歸還的操作。用戶輸入讀者編號(hào)后單擊按鈕借書(shū)記錄即可查詢讀者的借書(shū)信息。此時(shí)會(huì)查詢BorrowBook表,將記錄顯示在數(shù)據(jù)窗口中。輸入圖書(shū)編號(hào)(輸入編號(hào)要正確)后單擊借閱圖書(shū)按鈕即可完成借閱,如果借書(shū)成功,此時(shí)會(huì)在BorrowBook表中插入一條新記錄;單擊歸還圖書(shū),如果歸還成功,會(huì)將BorrowBoo

24、k表中相應(yīng)記錄刪除即可完成歸還圖書(shū)。以下是讀者借書(shū)界面。 圖11 讀者借閱圖書(shū)界面 圖12讀者借閱圖書(shū)界面——查詢、還書(shū) 4.6讀者信息管理 在讀者信息管理界面,可以對(duì)讀者信息進(jìn)行添加、修改、刪除三種操作。讀者信息包含讀者編號(hào),讀者姓名,讀者口令,電子郵件,聯(lián)系電話,已借書(shū)目。單擊添加按鈕,文本框?qū)⒖捎?,編輯完成以后,單擊確定,會(huì)將在Reader數(shù)據(jù)表中添加相應(yīng)的記錄。修改信息是針對(duì)現(xiàn)有讀者信息進(jìn)行修改,修改后會(huì)將修改后信息保存到讀者數(shù)據(jù)表。刪除信息時(shí)會(huì)將相應(yīng)記錄從讀者數(shù)據(jù)表中刪除。具體實(shí)現(xiàn)代碼見(jiàn)附錄。讀者信息管

25、理界面見(jiàn)下圖 圖12讀者信息管理——添加 圖13讀者信息管理——?jiǎng)h除 5. 設(shè)計(jì)總結(jié) 本文重點(diǎn)討論了“圖書(shū)管理系統(tǒng)”的設(shè)計(jì)方法和過(guò)程。全文分八部分進(jìn)行敘述:第一部分為緒論,簡(jiǎn)單的介紹了課題研究的背景和意義、系統(tǒng)介紹、開(kāi)發(fā)工具及用到的一些理論知識(shí);第二部分為系統(tǒng)分析,通過(guò)調(diào)查得出需求分析,從經(jīng)濟(jì)性和技術(shù)性兩方面對(duì)系統(tǒng)的可行性進(jìn)行了分析;第三部分系統(tǒng)設(shè)計(jì),首先提出系統(tǒng)的設(shè)計(jì)目標(biāo),再對(duì)系統(tǒng)的數(shù)據(jù)庫(kù)進(jìn)行了具體設(shè)計(jì),包括概念結(jié)構(gòu)設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì),最后得出項(xiàng)目規(guī)劃和系統(tǒng)功能結(jié)構(gòu)圖即總體設(shè)計(jì);第四部分系統(tǒng)主要功能模

26、塊實(shí)現(xiàn),介紹了主要模塊的操作及實(shí)現(xiàn)的功能,加以少量的代碼和界面圖形,給讀者一個(gè)清晰的認(rèn)識(shí);第五部分為設(shè)計(jì)總結(jié),簡(jiǎn)要說(shuō)明了該系統(tǒng)的實(shí)現(xiàn)過(guò)程,及自己在這次鍛煉過(guò)程中的感受;第六部分為參考文獻(xiàn),列出了在做該系統(tǒng)過(guò)程中所參閱的主要文獻(xiàn);第七部分為致謝;最后是附錄,列出了系統(tǒng)實(shí)現(xiàn)過(guò)程中用到的一些主要代碼。 在本次設(shè)計(jì)的全過(guò)程中,我對(duì)所學(xué)的知識(shí)有了一個(gè)比較系統(tǒng)的認(rèn)識(shí)和理解。在設(shè)計(jì)中我才知自己掌握的知識(shí)還遠(yuǎn)遠(yuǎn)不夠,將理論知識(shí)應(yīng)用到實(shí)踐中去,總會(huì)出現(xiàn)各種問(wèn)題,不是理論沒(méi)掌握好,而是光知道書(shū)本上的知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,一定要把理論知識(shí)和實(shí)踐結(jié)合起來(lái)。把學(xué)到的知識(shí)應(yīng)用到實(shí)踐中去,多做多練,才可以把理論的精華發(fā)揮出來(lái)

27、。知識(shí)不是知道,了解就好,一定讓它在現(xiàn)實(shí)生活中得到充分的應(yīng)用,從而解決一些問(wèn)題,這才是學(xué)習(xí)的根本目的。而且計(jì)算機(jī)是一門非常復(fù)雜且龐大的學(xué)科,一項(xiàng)課題往往需要多項(xiàng)技術(shù)才可以完成的。在設(shè)計(jì)階段,通過(guò)對(duì)課題的深入分析與研究,迫使我對(duì)技術(shù)有一定的了解。在遇到問(wèn)題時(shí),得到了指導(dǎo)老師與同學(xué)的悉心幫助,使我感受到集體的力量是無(wú)窮的。 我十分珍惜這次鍛煉的機(jī)會(huì),我按部就班的完成了自己的設(shè)計(jì)任務(wù),但由于自己的知識(shí)水平有限,設(shè)計(jì)時(shí)間又較短,所以該系統(tǒng)還有許多不盡如人意的地方,比如用戶界面不夠美觀等問(wèn)題,都有待進(jìn)一步改善。對(duì)于這些不足之處,懇請(qǐng)老師多多指教!當(dāng)今的社會(huì)是競(jìng)爭(zhēng)的社會(huì),而人才的競(jìng)爭(zhēng)則是競(jìng)爭(zhēng)的焦點(diǎn),課程

28、設(shè)計(jì)對(duì)我們來(lái)說(shuō),是一次很好的鍛煉,使我們各方面的能力都有了很大的提高,為我們將來(lái)踏出校門,走上社會(huì)增強(qiáng)了能力與自信! 6. 參考文獻(xiàn) [1]SQLServer2005數(shù)據(jù)庫(kù)管理與應(yīng)用[M],清華大學(xué)出版社,2005 [2]宋昆,李嚴(yán)等.SQL Server數(shù)據(jù)庫(kù)開(kāi)發(fā)實(shí)例解析[M].機(jī)械工業(yè)出版社.2006,1 [3]薩師煊,王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論(第三版)[M].高等教育出版社.1999 [4]王輝,張大治.C#程序設(shè)計(jì)實(shí)用教程[M],清華大學(xué)出版社. 2007.3 [5](美)James?Huddleston等楊浩譯.C#數(shù)據(jù)庫(kù)入門經(jīng)典[M].清華大學(xué)出版社. 2006.4 [6

29、](美)?Paulraj?Ponniah 著,譯者:韓宏志譯,數(shù)據(jù)庫(kù)設(shè)計(jì)與開(kāi)發(fā)教程[M].清華大學(xué)出版社.2005.1 [7][美]James Foxall,陳秋萍譯.VisualC#2005入門經(jīng)典[M].人民郵電出版社社.2007.3 [8]李維杰,孫乾君.SQLServer2005數(shù)據(jù)庫(kù)原理與應(yīng)用簡(jiǎn)明教程[M].?清華大學(xué)出版社.2007.5 [9](美)Gavin?Powell著,沈潔,王洪波,趙恒譯. 數(shù)據(jù)庫(kù)設(shè)計(jì)入門經(jīng)典[M].清華大學(xué)出版社.2007.3 [10]劉大瑋,馬傳寶,孫穎潔.SQLServer數(shù)據(jù)庫(kù)項(xiàng)目案例導(dǎo)航[M].清華大學(xué)出版社.2005.7 [11](美

30、)David?M.?Kroenke郭平譯.數(shù)據(jù)庫(kù)原理(第2版)[M].清華大學(xué)出版社.2005.6 [12]李律松,陳少剛,沈剛.Visual C#數(shù)據(jù)庫(kù)高級(jí)教程[M].清華大學(xué)出版社.2005.6 7. 致 謝 在本次課程設(shè)計(jì)中,首先要感謝王玉萍老師的悉心指導(dǎo),給予我許多新的思想和寶貴的意見(jiàn)。王老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、勤奮的工作作風(fēng)和平易近人的處事風(fēng)范,給我留下了深刻的印象,時(shí)時(shí)教育著我并使我終身受益!值此論文完稿之際,特此向王老師致以衷心的感謝! 同時(shí),感謝我們計(jì)算機(jī)科學(xué)與技術(shù)系的領(lǐng)導(dǎo)和老師們給我提供的良好環(huán)境和學(xué)習(xí)機(jī)會(huì),感謝老師和同學(xué)們對(duì)我的關(guān)心和幫助。 最后,感謝老師在

31、百忙之中抽出寶貴時(shí)間來(lái)審閱我的論文,謝謝老師的指導(dǎo)。 8. 附錄 系統(tǒng)登錄關(guān)鍵代碼 public partial class login : Form { public string password; //用來(lái)存儲(chǔ)密碼 public login() { InitializeComponent(); } private void button2_Click(object sender, EventArgs e) {

32、 Application.Exit(); } // 驗(yàn)證用戶是否合法 // 傳入用戶名、密碼、登錄類型 // 合法返回 True,不合法返回 False // message 參數(shù)用來(lái)記錄驗(yàn)證失敗的原因 private bool yanzhengshuru() { password = textBox3.Text; if (Typename.Text.Trim() == "")

33、 { MessageBox.Show("請(qǐng)選擇登錄類型", "登錄提示", MessageBoxButtons.OK, MessageBoxIcon.Information); Typename.Focus(); return false; } else if (loginid.Text.Trim() == "") { MessageBox.Show("請(qǐng)輸入用戶名", "登錄提

34、示", MessageBoxButtons.OK, MessageBoxIcon.Information); loginid.Focus(); return false; } else if (password == "") { MessageBox.Show("請(qǐng)輸入密碼", "登錄提示", MessageBoxButtons.OK, MessageBoxIcon.Information);

35、 textBox3.Focus(); return false; } else { return true; } } private void button1_Click(object sender, EventArgs e) { //userhelper.type = Typename.Text;//讀取用戶類型

36、 userhelper.adminid= loginid.Text; //用戶賬號(hào) password = textBox3.Text;//用戶密碼 if (yanzhengshuru()) { if (Typename.Text.Trim() == "管理員") { string sql = string.Format("Select count(*) from admin where admi

37、nId='{0}' and adminpass='{1}'", loginid.Text, password); try { // 創(chuàng)建 Command 對(duì)象 SqlCommand command = new SqlCommand(sql, Dbhelper.connection); // 打開(kāi)數(shù)據(jù)庫(kù)連接 Dbhelper.connection.Open(); // 驗(yàn)證是否為合法用戶 in

38、t count = (int)command.ExecuteScalar(); if (count < 1) { MessageBox.Show("用戶或密碼不存在!"); //result = false; } else { admin admin = new admin(); Admin. } } catch (Exception ex)

39、 { MessageBox.Show("操作數(shù)據(jù)庫(kù)出錯(cuò)!"); Console.WriteLine(ex.Message); //result = false; } finally { // 關(guān)閉數(shù)據(jù)庫(kù)連接 Dbhelper.connection.Close(); } } if (Typename.Text.Trim() == "借閱者")

40、 { userhelper.readerid =Convert .ToString (loginid.Text); string sql = string.Format("Select count(*) from reader where readerId='{0}' and readerpass='{1}'", userhelper.readerid,textBox3.Text); try

41、 { // 創(chuàng)建 Command 對(duì)象 SqlCommand command = new SqlCommand(sql, Dbhelper.connection); // 打開(kāi)數(shù)據(jù)庫(kù)連接 Dbhelper.connection.Open(); // 驗(yàn)證是否為合法用戶 int count = (i

42、nt)command.ExecuteScalar(); if (count < 1) { MessageBox.Show("用戶或密碼不存在!"); //result = false; } else {

43、 reader reader = new reader(); reader.Show(); } } catch (Exception ex) { MessageBox.Show("操作數(shù)據(jù)庫(kù)出錯(cuò)!"); Console.Wri

44、teLine(ex.Message); //result = false; } finally { // 關(guān)閉數(shù)據(jù)庫(kù)連接 Dbhelper.connection.Close(); 主控制界面實(shí)現(xiàn)關(guān)鍵代碼 public partial class admin : Form { public

45、admin() { InitializeComponent(); } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) { this.Close(); } private void admin_Load(object sender, EventArgs e) { toolStrip1.Text=string.Fo

46、rmat ("管理員:{}登錄",userhelper.adminid); } private void toolStripButton2_Click(object sender, EventArgs e) { addbook a = new addbook(); a.Show(); } private void toolStripButton4_Click(object sender, EventArgs e) {

47、 addreader addreader = new addreader(); addreader.Show(); //this.Close(); } private void toolStripButton7_Click(object sender, EventArgs e) { publisher a=new publisher(); a.Show (); //this.Close ();

48、 } private void toolStripButton3_Click(object sender, EventArgs e) { adminsearchbook a = new adminsearchbook(); a.Show(); } private void toolStripButton6_Click(object sender, EventArgs e) { } private void tool

49、StripButton1_Click(object sender, EventArgs e) { adminborrow a = new adminborrow(); a.Show(); } private void 添加圖書(shū)ToolStripMenuItem_Click(object sender, EventArgs e) { addbook a = new addbook(); a.Show();

50、 } private void 刪除圖書(shū)ToolStripMenuItem_Click(object sender, EventArgs e) { adminsearchbook a = new adminsearchbook(); a.Show(); } private void 查詢圖書(shū)ToolStripMenuItem_Click(object sender, EventArgs e) { adminsearchbook

51、a = new adminsearchbook(); a.Show(); } private void 查詢學(xué)生借閱信息ToolStripMenuItem_Click(object sender, EventArgs e) { adminborrow a = new adminborrow(); a.Show(); } private void toolStripButton6_Click_1(object sender, Ev

52、entArgs e) { booksborrow a = new booksborrow(); a.Show(); } private void 借書(shū)信息ToolStripMenuItem_Click(object sender, EventArgs e) { adminborrow a = new adminborrow(); a.Show(); } private void 還書(shū)信

53、息ToolStripMenuItem_Click(object sender, EventArgs e) { adminborrow a = new adminborrow(); a.Show(); } private void 查詢出版社信息ToolStripMenuItem_Click(object sender, EventArgs e) { publisher a = new publisher(); a.Sho

54、w(); // this.Close(); } private void toolStripButton5_Click(object sender, EventArgs e) { deletereader a = new deletereader(); a.Show(); } private void 刪除ToolStripMenuItem_Click(object sender, EventArgs e) {

55、 deletereader a = new deletereader(); a.Show(); } private void 添加ToolStripMenuItem_Click(object sender, EventArgs e) { readerinfo a = new readerinfo (); a.Show(); } private void 修改信息ToolStripMenuItem_Cli

56、ck(object sender, EventArgs e) { } private void 關(guān)于ToolStripMenuItem_Click(object sender, EventArgs e) { about a = new about(); a.Show(); } private void 修改出版社信息ToolStripMenuItem_Click(object sender, EventArgs e)

57、{ publisher a = new publisher(); a.Show(); } private void 打開(kāi)ToolStripMenuItem_Click(object sender, EventArgs e) { this.Close(); //Application.Exit(); } 圖書(shū)信息管理實(shí)現(xiàn)關(guān)鍵代碼 public adminsearchbook() {

58、 InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { try { string sql; if (comboBox1.Text == "") { MessageBox.Show("輸入不能為空

59、!"); comboBox1.Focus(); return; } if (comboBox1.Text == "書(shū)名") { sql = string.Format("select bookid,bookname,bookwritter,booktype.booktypename,bookprice,booktype

60、.flow,publisher.publishername,ifborrow from book,booktype,publisher where book.booktypeid=booktype.booktypeid and book.publisherid=publisher.publisherid and bookname = '{0}'", textBox1.Text); } else if (comboBox1.Text == "作者") {

61、 sql = string.Format("select bookid,bookname,bookwritter,booktype.booktypename,bookprice,booktype.flow,publisher.publishername,ifborrow from book,booktype,publisher where book.booktypeid=booktype.booktypeid and book.publisherid=publisher.publisherid and bookwritter like '%{0}%

62、'", textBox1.Text); } else if (comboBox1.Text == "出版社") { sql = string.Format("select bookid,bookname,bookwritter,booktype.booktypename,bookprice,booktype.flow,publisher.publishername,ifborrow from book,book

63、type,publisher where book.booktypeid=booktype.booktypeid and book.publisherid=publisher.publisherid and publisherName like '%{0}%'", textBox1.Text); } else if (comboBox1.Text=="所屬類別") { sql = string.Format("

64、select bookid,bookname,bookwritter,booktype.booktypename,bookprice,booktype.flow,publisher.publishername,ifborrow from book,booktype,publisher where book.booktypeid=booktype.booktypeid and book.publisherid=publisher.publisherid and bookTypeName like '%{0}%'", textBox1.Text); }

65、 else { sql = "select bookid,bookname,bookwritter,booktype.booktypename,bookprice,booktype.flow,publisher.publishername,ifborrow from book,booktype,publisher where book.booktypeid=booktype.booktypeid and book.publisherid=publish

66、er.publisherid "; } dataadapter = new SqlDataAdapter(sql, Dbhelper.connection); dataadapter.Fill(dataset, "book"); dataGridView1.DataSource = dataset.Tables["book"]; } catch { MessageBox.Show("error"); } finally { Dbhelper.connection.Close(); } } private void comboBox1_SelectedIndexC

展開(kāi)閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!