C#圖書管理系統(tǒng)課程設(shè)計(jì)畢業(yè)論文_第1頁
C#圖書管理系統(tǒng)課程設(shè)計(jì)畢業(yè)論文_第2頁
C#圖書管理系統(tǒng)課程設(shè)計(jì)畢業(yè)論文_第3頁
C#圖書管理系統(tǒng)課程設(shè)計(jì)畢業(yè)論文_第4頁
C#圖書管理系統(tǒng)課程設(shè)計(jì)畢業(yè)論文_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、鄭州科技學(xué)院c#課程設(shè)計(jì) 設(shè)計(jì)(論文)題目: 圖書管理系統(tǒng) 所 在 院: 信息工程學(xué)院 專 業(yè) 班 級(jí): 10計(jì)算機(jī)科學(xué)與技術(shù)2班學(xué) 生 姓 名: 學(xué) 號(hào): 201015043 指 導(dǎo) 教 師: 2013年6月5日目錄目錄11. 緒論21.1 課題研究的背景和意義21.2 系統(tǒng)介紹21.3 開發(fā)工具及運(yùn)行環(huán)境32. 系統(tǒng)分析52.1 需求分析52.2 可行性分析53. 系統(tǒng)設(shè)計(jì)63.1 設(shè)計(jì)目標(biāo)63.2 數(shù)據(jù)庫設(shè)計(jì)63.2.1 概念結(jié)構(gòu)設(shè)計(jì)63.2.2 邏輯結(jié)構(gòu)設(shè)計(jì)83.3.1 項(xiàng)目規(guī)劃103.3.2 系統(tǒng)功能結(jié)構(gòu)圖104. 系統(tǒng)主要功能模塊實(shí)現(xiàn)114.1 登錄界面114.2 主控制界面114

2、.3 圖書信息維護(hù)124.4 出版社信息管理144.5 圖書借閱界面145. 設(shè)計(jì)總結(jié)186. 參考文獻(xiàn)197. 致 謝208. 附錄201. 緒論1.1 課題研究的背景和意義隨著社會(huì)的進(jìn)步與發(fā)展,資源高效利用提高效率越來越受到人們的關(guān)注.圖書管理也提出這樣的要求,因此圖書管理的數(shù)字化越來越受到大眾的青睞.傳統(tǒng)圖書管理方式存在一些弊端,比如需要人員較多,工作量很大,管理資料保存查詢不方便等.圖書管理系統(tǒng)是現(xiàn)代圖書管理工具中的重要組成部分.現(xiàn)代化的圖書管理需要有現(xiàn)代化的管理系統(tǒng),采用計(jì)算機(jī)管理信息系統(tǒng)已成為圖書管理科學(xué)化和現(xiàn)代化的一個(gè)重要特征,給圖書管理帶來極大的便利.近年來圖書事業(yè)的發(fā)展,以及

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

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

5、它提供了軟件代碼自動(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ù)訪問對(duì)象接口有三種:odbc(open database connectity,開發(fā)數(shù)據(jù)庫連接)、dao(data access objects,數(shù)據(jù)訪問對(duì)象)及ole db(ole data

6、base,ole數(shù)據(jù)庫)。1odbc(open database connectivity,開放數(shù)據(jù)庫連接) odbc提供了應(yīng)用程序接口(api),使得任何一個(gè)數(shù)據(jù)庫都可以通過odbc驅(qū)動(dòng)器與指定dbmc相聯(lián),用戶的程序就可以通過調(diào)用odbc驅(qū)動(dòng)管理器中相應(yīng)的驅(qū)動(dòng)程序達(dá)到管理數(shù)據(jù)庫的目的。作為microsoft windows open standards architecture(wosa,windows開放式服務(wù)體系結(jié)構(gòu))的主要組成部分,odbc一直沿用至今。2.dao(data access objects,數(shù)據(jù)訪問對(duì)象) dao 提供了一種通過程序代碼創(chuàng)建和操縱數(shù)據(jù)庫的機(jī)制。多個(gè)dao

7、 對(duì)象構(gòu)成了一個(gè)體系結(jié)構(gòu),在這個(gè)結(jié)構(gòu)里,各個(gè)dao 對(duì)象協(xié)同工作,通過 microsoft jet 數(shù)據(jù)庫訪問數(shù)據(jù)庫中的數(shù)據(jù)和數(shù)據(jù)庫的結(jié)構(gòu)定義??梢栽L問的數(shù)據(jù)庫類型主要有:microsoft jet 數(shù)據(jù)庫、odbc 數(shù)據(jù)源、可安裝的isam數(shù)據(jù)庫。dao 是我們可以通過程序訪問和操縱本地的或遠(yuǎn)程的數(shù)據(jù)和數(shù)據(jù)定義,管理數(shù)據(jù)庫中的對(duì)象或結(jié)構(gòu)。dao 支持兩種不同的數(shù)據(jù)庫環(huán)境稱為工作區(qū)(workspace). microsoft jet workspace 這是一種使用microsoft jet 數(shù)據(jù)庫引擎來訪問數(shù)據(jù)源的工作區(qū)。odbc direct workspace 這是一種使用 odbc d

8、irect 來直接訪問一個(gè)odbc 數(shù)據(jù)源,并繞過microsoft jet 數(shù)據(jù)庫引擎的工作區(qū)。可通過odbc訪問數(shù)據(jù)庫服務(wù)器,而無須安裝microsoft jet 數(shù)據(jù)庫引擎。3ole db(ole data base,ole數(shù)據(jù)庫)。ole db試圖提高一種統(tǒng)一的數(shù)據(jù)訪問接口,并能處理除了標(biāo)準(zhǔn)的關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)之外,還能處理包括郵件數(shù)據(jù)、web上的文本或圖形、目錄服務(wù)(directory services),以及主機(jī)系統(tǒng)中的ims和vsam數(shù)據(jù)。ole db提供一個(gè)數(shù)據(jù)庫編程com(組件對(duì)象模型)接口,使得數(shù)據(jù)的使用者(應(yīng)用程序)可以使用同樣的方法訪問各種數(shù)據(jù),而不用考慮數(shù)據(jù)的具體存

9、儲(chǔ)地點(diǎn)、格式或類型。這個(gè)com接口與odbc相比,其健壯性和靈活性要高的多。但是,由于ole db的程序比較復(fù)雜,因而對(duì)于一般用戶來說使用odbc和dao方式已能滿足一般數(shù)據(jù)庫處理的需要。開發(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ù)庫:sql server 2005。分辨率:最佳效果1024768像素。2. 系統(tǒng)分析2.1 需求分析通過調(diào)查,要求系統(tǒng)需要有以下功能:系統(tǒng)登錄用戶管理圖書管理 圖書借閱圖書查詢 出版社管理 系統(tǒng)退出。2.2 可行性分析圖書管理系統(tǒng)使圖書管理走上

10、了科學(xué)化、系統(tǒng)化管理道路。(1)經(jīng)濟(jì)可行性 使用圖書管理系統(tǒng)能夠極大的節(jié)約圖書管理工作的運(yùn)行成本。主要體現(xiàn)在:使用圖書管理系統(tǒng)能夠減少工作人員數(shù)量,從而降低人力成本;實(shí)用圖書管理系統(tǒng)可以減少對(duì)管理資料維護(hù)的成本(2)技術(shù)可行性 目前國內(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)本系統(tǒng)是針對(duì)圖書管理工作過程進(jìn)行設(shè)計(jì)的,主要實(shí)現(xiàn)如下目標(biāo):合法用戶可以登錄此系統(tǒng);讀者可以查詢、借閱、歸還圖書等; 工作人員可以對(duì)讀者、圖書進(jìn)行管理。3.2 數(shù)據(jù)庫設(shè)計(jì)3.2.1

11、 概念結(jié)構(gòu)設(shè)計(jì)將從需求分析中得到的數(shù)據(jù)信息抽象為概念模型,經(jīng)分析可得到數(shù)據(jù)庫的e-r模型。如圖所示。 圖書名稱作者編號(hào)出版期價(jià)格種類出版社 圖1:圖書實(shí)體er圖 出版社電話電子郵件名稱地址 圖2:出版社實(shí)體er圖密碼 讀者姓名編號(hào)專業(yè)狀態(tài)借書量年齡性別院系 圖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)出):圖書(圖書編號(hào),圖書名稱,圖書作者,出版社,出版日期,圖書價(jià)格,圖書種類)出版社(出版社編號(hào),出版社地址,出版社電話,電子郵件)讀者(讀者編號(hào),讀者名稱,密碼,讀者電話,電子

12、郵件,借書數(shù)量)用戶(用戶編號(hào),用戶密碼,用戶類型)以下關(guān)系模式為讀者圖書的關(guān)系模式:借閱圖書(讀者編號(hào),圖書編號(hào),借閱日期,應(yīng)還日期,歸還日期,是否歸還)從以上的關(guān)系模式我們可以得到數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì)(二維表)。每個(gè)表格表示數(shù)據(jù)庫中的一個(gè)數(shù)據(jù)表。為了優(yōu)化數(shù)據(jù)表結(jié)構(gòu),部分字段采用代碼形式,以便與數(shù)據(jù)庫中的數(shù)據(jù)表對(duì)應(yīng)起來。根據(jù)以上分析,需要設(shè)計(jì)五個(gè)數(shù)據(jù)表來存放數(shù)據(jù)信息,這些表分別為圖書表,出版社表,讀者表,用戶表,借閱表。以下五個(gè)表分別是這五個(gè)表的結(jié)構(gòu)設(shè)計(jì)。 表1 圖書表編號(hào)字段名數(shù)據(jù)類型說 明備 注1bookidchar(10)圖書編號(hào)主鍵2bookwritervarchar(30)圖書作者

13、3booknamevarchar(20)圖書名稱4bookpublishvarchar(50)出版社5bookpublishdatedatetime出版日期6bookpricefloat圖書價(jià)格7booksortvarchar(20)圖書類型 表2 出版社表編號(hào)字段名數(shù)據(jù)類型說 明備 注1publishnamevarchar(50)出版社名稱主鍵2publishaddressvarchar(50)出版社地址3publishphonenovarchar(15)出版社電話4publishemailvarchar(30)電子郵件 表3 讀者表編號(hào)字段名數(shù)據(jù)類型說 明備 注1readeridchar(

14、6)讀者編號(hào)主鍵2readernamevarchar(20)讀者名稱3readerpasswordvarchar(10)讀者密碼4readersexvarchar(15)讀者性別5readeragevarchar(50)讀者年齡6readerdeptvarchar(15)讀者系別7readerzhuanyevarchar(15)讀者專業(yè)8maxnumberint借閱數(shù)量9islostvchar(15)是否超期 表4 用戶表編號(hào)字段名數(shù)據(jù)類型說 明備 注1useridchar(10)用戶編號(hào)主鍵2userpasswordchar(10)用戶密碼3usersortvarchar(10)用戶類型 表

15、5 借閱表編號(hào)字段名數(shù)據(jù)類型說 明備 注1readeridchar(6)讀者編號(hào)外鍵2bookidchar(10)圖書編號(hào)外鍵3borrowdatedatetime借書日期4returndatedatetime應(yīng)還日期5outtimedatetime是否超期3.3 總體設(shè)計(jì)3.3.1 項(xiàng)目規(guī)劃圖書管理系統(tǒng)是一個(gè)典型的數(shù)據(jù)庫應(yīng)用程序,由應(yīng)用程序和后臺(tái)數(shù)據(jù)庫兩部分構(gòu)成。應(yīng)用程序應(yīng)用程序主要包括登錄,用戶信息,讀者信息,圖書信息管理,借閱圖書,綜合查詢,出版社信息,退出系統(tǒng)幾個(gè)部分組成。數(shù)據(jù)庫 數(shù)據(jù)庫負(fù)責(zé)對(duì)圖書信息,用戶信息等數(shù)據(jù)的管理。3.3.2 系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)功能結(jié)構(gòu)如圖所示。 圖5 系統(tǒng)功

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

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

18、作。單擊刪除按鈕會(huì)將當(dāng)前圖書信息從“book”數(shù)據(jù)表中刪除。下圖為圖書信息維護(hù)的界面。 圖八 圖書信息維護(hù)界面查詢、刪除 圖九 圖書信息維護(hù)界面添加4.4 出版社信息管理 出版社信息管理界面使用戶可以完成出版社信息的添加,修改,刪除等操作。單擊添加按鈕以后,文本框?qū)⒖梢跃庉?,編輯好信息后,單擊確定按鈕,如信息無誤會(huì)將信息保存到publishcompany數(shù)據(jù)表中。注意信息不能為空,如為空會(huì)出現(xiàn)錯(cuò)誤。修改和刪除出版社信息與添加信息相似。以下為出版社信息管理界面: 圖十 出版社信息管理界面4.5 圖書借閱界面圖書借閱界面使用戶完成圖書借閱歸還的操作。用戶輸入讀者編號(hào)后單擊按鈕借書記錄即可查詢讀者的

19、借書信息。此時(shí)會(huì)查詢borrowbook表,將記錄顯示在數(shù)據(jù)窗口中。輸入圖書編號(hào)(輸入編號(hào)要正確)后單擊借閱圖書按鈕即可完成借閱,如果借書成功,此時(shí)會(huì)在borrowbook表中插入一條新記錄;單擊歸還圖書,如果歸還成功,會(huì)將borrowbook表中相應(yīng)記錄刪除即可完成歸還圖書。以下是讀者借書界面。 圖11 讀者借閱圖書界面 圖12讀者借閱圖書界面查詢、還書4.6讀者信息管理 在讀者信息管理界面,可以對(duì)讀者信息進(jìn)行添加、修改、刪除三種操作。讀者信息包含讀者編號(hào),讀者姓名,讀者口令,電子郵件,聯(lián)系電話,已借書目。單擊添加按鈕,文本框?qū)⒖捎?,編輯完成以后,單擊確定,會(huì)將在reader數(shù)據(jù)表中添加相應(yīng)

20、的記錄。修改信息是針對(duì)現(xiàn)有讀者信息進(jìn)行修改,修改后會(huì)將修改后信息保存到讀者數(shù)據(jù)表。刪除信息時(shí)會(huì)將相應(yīng)記錄從讀者數(shù)據(jù)表中刪除。具體實(shí)現(xiàn)代碼見附錄。讀者信息管理界面見下圖 圖12讀者信息管理添加 圖13讀者信息管理刪除5. 設(shè)計(jì)總結(jié)本文重點(diǎn)討論了“圖書管理系統(tǒng)”的設(shè)計(jì)方法和過程。全文分八部分進(jìn)行敘述:第一部分為緒論,簡(jiǎn)單的介紹了課題研究的背景和意義、系統(tǒng)介紹、開發(fā)工具及用到的一些理論知識(shí);第二部分為系統(tǒng)分析,通過調(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ù)庫進(jìn)行了具體設(shè)計(jì),包括概念結(jié)構(gòu)設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì),最后得出項(xiàng)目規(guī)劃

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

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

23、爭(zhēng)的社會(huì),而人才的競(jìng)爭(zhēng)則是競(jìng)爭(zhēng)的焦點(diǎn),課程設(shè)計(jì)對(duì)我們來說,是一次很好的鍛煉,使我們各方面的能力都有了很大的提高,為我們將來踏出校門,走上社會(huì)增強(qiáng)了能力與自信!6. 參考文獻(xiàn)1sqlserver2005數(shù)據(jù)庫管理與應(yīng)用m,清華大學(xué)出版社,20052宋昆,李嚴(yán)等.sql server數(shù)據(jù)庫開發(fā)實(shí)例解析m.機(jī)械工業(yè)出版社.2006,13薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論(第三版)m.高等教育出版社.19994王輝,張大治.c#程序設(shè)計(jì)實(shí)用教程m,清華大學(xué)出版社. 2007.35(美)jameshuddleston等楊浩譯.c#數(shù)據(jù)庫入門經(jīng)典m.清華大學(xué)出版社. 2006.46(美)paulrajponni

24、ah 著,譯者:韓宏志譯,數(shù)據(jù)庫設(shè)計(jì)與開發(fā)教程m.清華大學(xué)出版社.2005.17美james foxall,陳秋萍譯.visualc#2005入門經(jīng)典m.人民郵電出版社社.2007.38李維杰,孫乾君.sqlserver2005數(shù)據(jù)庫原理與應(yīng)用簡(jiǎn)明教程m.清華大學(xué)出版社.2007.59(美)gavinpowell著,沈潔,王洪波,趙恒譯. 數(shù)據(jù)庫設(shè)計(jì)入門經(jīng)典m.清華大學(xué)出版社.2007.310劉大瑋,馬傳寶,孫穎潔.sqlserver數(shù)據(jù)庫項(xiàng)目案例導(dǎo)航m.清華大學(xué)出版社.2005.711(美)davidm.kroenke郭平譯.數(shù)據(jù)庫原理(第2版)m.清華大學(xué)出版社.2005.612李律松,陳

25、少剛,沈剛.visual c#數(shù)據(jù)庫高級(jí)教程m.清華大學(xué)出版社.2005.67. 致 謝在本次課程設(shè)計(jì)中,首先要感謝王玉萍老師的悉心指導(dǎo),給予我許多新的思想和寶貴的意見。王老師嚴(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)心和幫助。最后,感謝老師在百忙之中抽出寶貴時(shí)間來審閱我的論文,謝謝老師的指導(dǎo)。8. 附錄系統(tǒng)登錄關(guān)鍵代碼 public partial class login : form

26、public string password; /用來存儲(chǔ)密碼 public login() initializecomponent(); private void button2_click(object sender, eventargs e) application.exit(); / 驗(yàn)證用戶是否合法 / 傳入用戶名、密碼、登錄類型 / 合法返回 true,不合法返回 false / message 參數(shù)用來記錄驗(yàn)證失敗的原因 private bool yanzhengshuru() password = textbox3.text; if (typename.text.trim()

27、= ) messagebox.show(請(qǐng)選擇登錄類型, 登錄提示, messageboxbuttons.ok, messageboxicon.information); typename.focus(); return false; else if (loginid.text.trim() = ) messagebox.show(請(qǐng)輸入用戶名, 登錄提示, messageboxbuttons.ok, messageboxicon.information); loginid.focus(); return false; else if (password = ) messagebox.show

28、(請(qǐng)輸入密碼, 登錄提示, messageboxbuttons.ok, messageboxicon.information); textbox3.focus(); return false; else return true; private void button1_click(object sender, eventargs e) /userhelper.type = typename.text;/讀取用戶類型 userhelper.adminid= loginid.text; /用戶賬號(hào) password = textbox3.text;/用戶密碼 if (yanzhengshuru(

29、) if (typename.text.trim() = 管理員) string sql = string.format(select count(*) from admin where adminid=0 and adminpass=1, loginid.text, password); try / 創(chuàng)建 command 對(duì)象 sqlcommand command = new sqlcommand(sql, dbhelper.connection); / 打開數(shù)據(jù)庫連接 dbhelper.connection.open(); / 驗(yàn)證是否為合法用戶 int count = (int)comm

30、and.executescalar(); if (count 1) messagebox.show(用戶或密碼不存在!); /result = false; else admin admin = new admin(); admin. catch (exception ex) messagebox.show(操作數(shù)據(jù)庫出錯(cuò)!); console.writeline(ex.message); /result = false; finally / 關(guān)閉數(shù)據(jù)庫連接 dbhelper.connection.close(); if (typename.text.trim() = 借閱者) userhel

31、per.readerid =convert .tostring (loginid.text); string sql = string.format(select count(*) from reader where readerid=0 and readerpass=1, userhelper.readerid,textbox3.text); try / 創(chuàng)建 command 對(duì)象 sqlcommand command = new sqlcommand(sql, dbhelper.connection); / 打開數(shù)據(jù)庫連接 dbhelper.connection.open(); / 驗(yàn)證是

32、否為合法用戶 int count = (int)command.executescalar(); if (count 1) messagebox.show(用戶或密碼不存在!); /result = false; else reader reader = new reader(); reader.show(); catch (exception ex) messagebox.show(操作數(shù)據(jù)庫出錯(cuò)!); console.writeline(ex.message); /result = false; finally / 關(guān)閉數(shù)據(jù)庫連接 dbhelper.connection.close();主

33、控制界面實(shí)現(xiàn)關(guān)鍵代碼 public partial class admin : form public admin() initializecomponent(); private void 退出toolstripmenuitem_click(object sender, eventargs e) this.close(); private void admin_load(object sender, eventargs e) toolstrip1.text=string.format (管理員:登錄,userhelper.adminid); private void toolstripbut

34、ton2_click(object sender, eventargs e) addbook a = new addbook(); a.show(); private void toolstripbutton4_click(object sender, eventargs e) addreader addreader = new addreader(); addreader.show(); /this.close(); private void toolstripbutton7_click(object sender, eventargs e) publisher a=new publishe

35、r(); a.show (); /this.close (); private void toolstripbutton3_click(object sender, eventargs e) adminsearchbook a = new adminsearchbook(); a.show(); private void toolstripbutton6_click(object sender, eventargs e) private void toolstripbutton1_click(object sender, eventargs e) adminborrow a = new adm

36、inborrow(); a.show(); private void 添加圖書toolstripmenuitem_click(object sender, eventargs e) addbook a = new addbook(); a.show(); private void 刪除圖書toolstripmenuitem_click(object sender, eventargs e) adminsearchbook a = new adminsearchbook(); a.show(); private void 查詢圖書toolstripmenuitem_click(object se

37、nder, eventargs e) adminsearchbook 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, eventargs e) booksborrow a = new booksborrow(); a.show();

38、 private void 借書信息toolstripmenuitem_click(object sender, eventargs e) adminborrow a = new adminborrow(); a.show(); private void 還書信息toolstripmenuitem_click(object sender, eventargs e) adminborrow a = new adminborrow(); a.show(); private void 查詢出版社信息toolstripmenuitem_click(object sender, eventargs e)

39、 publisher a = new publisher(); a.show(); / this.close(); private void toolstripbutton5_click(object sender, eventargs e) deletereader a = new deletereader(); a.show(); private void 刪除toolstripmenuitem_click(object sender, eventargs e) deletereader a = new deletereader(); a.show(); private void 添加to

40、olstripmenuitem_click(object sender, eventargs e) readerinfo a = new readerinfo (); a.show(); private void 修改信息toolstripmenuitem_click(object sender, eventargs e) private void 關(guān)于toolstripmenuitem_click(object sender, eventargs e) about a = new about(); a.show(); private void 修改出版社信息toolstripmenuitem

41、_click(object sender, eventargs e) publisher a = new publisher(); a.show(); private void 打開toolstripmenuitem_click(object sender, eventargs e) this.close(); /application.exit(); 圖書信息管理實(shí)現(xiàn)關(guān)鍵代碼 public adminsearchbook() initializecomponent(); private void button1_click(object sender, eventargs e) try st

42、ring sql; if (combobox1.text = ) messagebox.show(輸入不能為空!); combobox1.focus(); return; if (combobox1.text = 書名) 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 bookname = 0, textbox1.text); else if (combobox1.text = 作者) sql = string.form

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論