版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 數(shù)據(jù)庫(kù)畢業(yè)論文</b></p><p><b> 目 錄</b></p><p><b> 摘要1</b></p><p> Abstract.1</p><p><b> 1 引言2</b></p&
2、gt;<p> 1.1 圖書(shū)管理的現(xiàn)狀2</p><p> 1.2 現(xiàn)有圖書(shū)管理系統(tǒng)的概述3</p><p> 1.3 選題的目的、意義3</p><p> 1.4 圖書(shū)管理系統(tǒng)的可行性分析4</p><p> 1.5 系統(tǒng)開(kāi)發(fā)運(yùn)行環(huán)境4</p><p> 2 圖書(shū)管理系
3、統(tǒng)開(kāi)發(fā)相關(guān)技術(shù)的介紹5</p><p> 2.1 Asp.net的介紹5</p><p> 2.1.1 Asp.net的優(yōu)勢(shì)介紹5</p><p> 2.1.2 Asp.net的特點(diǎn)5</p><p> 2.2 SQL Server 2005 概述6</p><p> 2.3 Web技術(shù)
4、7</p><p> 2.3.1 瀏覽器/服務(wù)器(Browser/Server)結(jié)構(gòu)7</p><p> 2.3.2 IIS服務(wù)器技術(shù)7</p><p> 3 系統(tǒng)總體設(shè)計(jì)分析8</p><p> 3.1 系統(tǒng)需求分析8</p><p> 3.2 系統(tǒng)實(shí)現(xiàn)的目標(biāo)8</p>&l
5、t;p> 3.3 系統(tǒng)功能模塊設(shè)計(jì)8</p><p> 3.4 系統(tǒng)功能結(jié)構(gòu)圖9</p><p> 3.5 系統(tǒng)流程圖11</p><p> 4 數(shù)據(jù)總體結(jié)構(gòu)設(shè)計(jì)12</p><p> 4.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)12</p><p> 4.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)13</p
6、><p> 4.3 圖書(shū)管理系統(tǒng)的系統(tǒng)E-R圖15</p><p> 4.4 數(shù)據(jù)表設(shè)計(jì)16</p><p> 5 圖書(shū)管理系統(tǒng)詳細(xì)設(shè)計(jì)18</p><p> 5.1 系統(tǒng)流程分析18</p><p> 5.2 主要模塊的運(yùn)行19</p><p> 5.2.1 登陸
7、界面19</p><p> 5.2.2 圖書(shū)信息管理模塊19</p><p> 5.2.3 圖書(shū)借還信息模塊21</p><p> 5.3 系統(tǒng)開(kāi)發(fā)的遇到的相關(guān)問(wèn)題及解決21</p><p> 5.3.1 圖書(shū)管理系統(tǒng)索引21</p><p> 5.3.2 如何驗(yàn)證輸入的字符串22<
8、;/p><p> 5.3.3 自動(dòng)計(jì)算圖書(shū)歸還日期23</p><p> 5.3.4 系統(tǒng)登陸驗(yàn)證碼的實(shí)現(xiàn)23</p><p><b> 6 結(jié)論25</b></p><p> 6.1 主要研究?jī)?nèi)容及成果26</p><p> 6.2 今后進(jìn)一步研究方向26</p&
9、gt;<p><b> 參考文獻(xiàn)26</b></p><p><b> 致 謝27</b></p><p> 學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)</p><p> 摘要:圖書(shū)管理系統(tǒng)是智能辦公系統(tǒng)(IOA)的重要組成部分,因此,圖書(shū)管理系統(tǒng)也以方便、快捷的優(yōu)點(diǎn)正慢慢地進(jìn)入人們的生活,將傳統(tǒng)的圖書(shū)管理方式徹底的
10、解脫出來(lái),提高效率,減輕工作人員以往繁忙的工作,減小出錯(cuò)的概率,使讀者可以花更多的時(shí)間在選擇書(shū)和看書(shū)上。從而使人們有更多時(shí)間來(lái)獲取信息、了解信息、掌握信息。其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。采用SQL Server2005數(shù)據(jù)庫(kù)作為后臺(tái)數(shù)據(jù)庫(kù)、Visual C#編程語(yǔ)言作為前臺(tái)開(kāi)發(fā)工具,通過(guò)對(duì)數(shù)據(jù)庫(kù)技術(shù)進(jìn)行了較深入的學(xué)習(xí)和應(yīng)用,主要完成書(shū)目檢索、讀者管理、借閱管理、圖書(shū)管理、用戶維護(hù)、系統(tǒng)維護(hù)等系統(tǒng)功能
11、。系統(tǒng)運(yùn)行結(jié)果證明,本文所設(shè)計(jì)的圖書(shū)管理系統(tǒng)可以滿足學(xué)生和教師借閱者、圖書(shū)管理員兩方面的需要,達(dá)到了設(shè)計(jì)要求。</p><p> 關(guān)鍵詞:圖書(shū)管理;系統(tǒng)設(shè)計(jì);信息;ASP.NET;SQLServer2005 </p><p> The development of the library book management system</p><p> Abst
12、ract: Library book management system is an important component part of the (IOA), therefore, the library book management system take the advantage of convenience and shortcut to enter peoples’ life slowly, the old librar
13、y book management system is a bit outdated. New library book management system have improved efficiency , decrease the heavy workload of the staff in the past , reducing the error probability. It enable people to spen
14、d more time for chosing and reading books. So that peopl</p><p> Keywords:library book management; system design ;information; ASP.NET;SQLServer2005</p><p><b> 1 引言</b></p>
15、<p> 隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,Internet/Intranet應(yīng)用在全球范圍內(nèi)日益普及,當(dāng)今社會(huì)正快速向信息化社會(huì)前進(jìn),信息系統(tǒng)的作用也越來(lái)越大。圖書(shū)館在正常運(yùn)營(yíng)中總是面對(duì)大量的讀者信息,書(shū)籍信息以及由兩者相互作用產(chǎn)生的借書(shū)信息,還書(shū)信息。因此圖書(shū)管理信息化是發(fā)展的必然趨勢(shì)。用結(jié)構(gòu)化系統(tǒng)分析與設(shè)計(jì)的方法,建立一套有效的圖書(shū)信息管理系統(tǒng),可以減輕工作,將工作科學(xué)化、規(guī)范化,提高了圖書(shū)館信息管理的工作質(zhì)量因此根據(jù)
16、圖書(shū)館目前實(shí)際的管理情況開(kāi)發(fā)一套圖書(shū)管理系統(tǒng)是十分必要的。</p><p> 1.1 圖書(shū)管理的現(xiàn)狀</p><p> 一直以來(lái)人們使用傳統(tǒng)的人工方式管理圖書(shū)館的日常工作,對(duì)于圖書(shū)館的借書(shū)和還書(shū)過(guò)程,想必大家都已很熟悉。在計(jì)算機(jī)尚未在圖書(shū)管理系統(tǒng)廣泛使用之前,借書(shū)和還書(shū)過(guò)程主要依靠手工。一個(gè)最典型的手工處理還書(shū)過(guò)程就是:讀者將要借的書(shū)和借閱證交給工作人員,工作人員將每本書(shū)上附帶的描述
17、書(shū)的信息的卡片和讀者的借閱證放在一個(gè)小格欄里,并在借閱證和每本書(shū)貼的借閱條上填寫(xiě)借閱信息。這樣借書(shū)過(guò)程就完成了。還書(shū)時(shí),讀者將要還的書(shū)交給工作人員,工作人員根據(jù)圖書(shū)信息找到相應(yīng)的書(shū)卡和借閱證,并填好相應(yīng)的還書(shū)信息,這樣還書(shū)過(guò)程就完成了。隨著近年來(lái)信息技術(shù)及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷發(fā)展, 圖書(shū)館也先從傳統(tǒng)的圖書(shū)館發(fā)展到自動(dòng)化圖書(shū)館,再發(fā)展到今天的數(shù)字圖書(shū)館,這些變化使得圖書(shū)館的形象越來(lái)越現(xiàn)代化,人們查找資料也更加方便。對(duì)于一些小圖書(shū)館和一些圖
18、書(shū)室來(lái)說(shuō),由于工作人員比較少,長(zhǎng)期以來(lái),作為圖書(shū)館的主要工作—圖書(shū)借閱一直未能很好地開(kāi)展。在平常的圖書(shū)借閱工作中, 由于大部分讀者不熟悉圖書(shū)館藏書(shū),且對(duì)圖書(shū)排架分類的不了解,往往花費(fèi)很長(zhǎng)時(shí)間才能找到其所需的書(shū)。為提高管理效率,更好地為讀者服務(wù),利用已有的辦公局域網(wǎng)絡(luò)條件,將館藏書(shū)籍做成基于WE</p><p> 傳統(tǒng)的圖書(shū)管理模式其最大的特點(diǎn)是手工;首先要把買(mǎi)來(lái)的圖書(shū)資料登記到資料本上,再給每本書(shū)分類貼上標(biāo)簽及
19、制作和標(biāo)簽相對(duì)應(yīng)的圖書(shū)分類卡片,最后把圖書(shū)分類卡片按類別分別放置在文件柜里。對(duì)于有學(xué)生(教師)證的學(xué)生(教師)來(lái)說(shuō)還要對(duì)他們資料作一定的記錄。并且在人們來(lái)借書(shū)的時(shí)候,首先持證件者要去存放圖書(shū)分類卡片的文件柜里查找想借的書(shū)是否在架,如果卡片存在,再按照?qǐng)D書(shū)分類卡片在相應(yīng)的書(shū)架上找到需要的圖書(shū),然后登記持證件者的借還書(shū)時(shí)間和在書(shū)簽條上寫(xiě)下借還書(shū)記錄,之后把借書(shū)證留在那里;還書(shū)的時(shí)候,相對(duì)應(yīng)的消去出借記錄;這樣做起來(lái)比較麻煩,比較費(fèi)時(shí)間。傳統(tǒng)
20、圖書(shū)管理的特點(diǎn)是一直以來(lái),中小型書(shū)店、中小學(xué)的小型圖書(shū)館及各高校圖書(shū)館和資料室使用傳統(tǒng)的人工方式管理圖書(shū)檔案、會(huì)員檔案。這種管理方式存在著諸多缺點(diǎn),如:手續(xù)繁瑣、工作量大、效率低下、出錯(cuò)率高等,同時(shí)給對(duì)大量資料的查詢、更新及維護(hù)都帶來(lái)不少困難。</p><p> 1.2 現(xiàn)有圖書(shū)管理系統(tǒng)的概述</p><p> 在試用了一些個(gè)圖書(shū)管理系統(tǒng)和查閱了大量相關(guān)資料文獻(xiàn)的基礎(chǔ)上,發(fā)現(xiàn)那些系統(tǒng)
21、在幾個(gè)方面已經(jīng)不符合時(shí)代的要求,由于設(shè)計(jì)人員及其所用的工具的不同,有Visual Basic6.0、Visual ForPro6.0、Power Builder等,再加上這些圖書(shū)管理系統(tǒng)設(shè)計(jì)的時(shí)間也不一樣,所用具體場(chǎng)合也有區(qū)別,因此在功能上除了圖書(shū)資料管理所需的基本功能之外也有所不同。經(jīng)過(guò)比較總結(jié)他們都實(shí)現(xiàn)了以下圖書(shū)管理的基本功能:1、圖書(shū)檢索模塊:是圖書(shū)管理系統(tǒng)的重要模塊之一,是讀者快速查詢圖書(shū)的途徑。2、圖書(shū)管理模塊:是圖書(shū)管理員操
22、作模塊,讀者是無(wú)權(quán)進(jìn)入的。本模塊由借出圖書(shū)登記、歸還圖書(shū)登記和續(xù)借圖書(shū)登記子模塊構(gòu)成。3、數(shù)據(jù)維護(hù)模塊:是由圖書(shū)管理員控制的模塊,它由增加、修改和刪除讀者,增加、修改刪除圖書(shū),瀏覽修改讀者、瀏覽修改圖書(shū)等程序組成。 4、數(shù)據(jù)統(tǒng)計(jì)模塊:由讀者統(tǒng)計(jì)、圖書(shū)統(tǒng)計(jì)、借出圖書(shū)分類統(tǒng)計(jì)、到期末歸還圖書(shū)讀者統(tǒng)計(jì)幾部分組成。這些系統(tǒng)解決了以前的那種管理方式所存在著的諸如手續(xù)繁瑣、工作量大、效率低下、出錯(cuò)率高等缺點(diǎn),設(shè)計(jì)出的系統(tǒng)能使讀者快速檢索到自己喜愛(ài)的
23、書(shū),圖書(shū)管理員能減輕工作量。</p><p> 但是鑒于開(kāi)發(fā)工具和開(kāi)發(fā)當(dāng)時(shí)的科技發(fā)展水平所限,再加上歷史發(fā)展到今天,人們的生活環(huán)境已經(jīng)發(fā)生了改變,大家對(duì)于圖書(shū)查詢這方面的要求也更高。比如在一個(gè)局域網(wǎng)內(nèi),大家希望能在本臺(tái)電腦上就能查找自己想要的圖書(shū),而不用跑到圖書(shū)館或圖書(shū)室里去用那里的電腦查詢,這就需要一個(gè)網(wǎng)絡(luò)化的聯(lián)機(jī)查詢系統(tǒng)。</p><p> 1.3 選題的目的、意義 </p
24、><p> 隨著社會(huì)的進(jìn)步,信息技術(shù)的廣泛應(yīng)用,數(shù)字化管理的優(yōu)勢(shì)日趨顯著。針對(duì)中小型圖書(shū)館或圖書(shū)室管理落后的情況,設(shè)計(jì)實(shí)現(xiàn)一個(gè)圖書(shū)信息管理系統(tǒng),通過(guò)與計(jì)算機(jī)的結(jié)合使用對(duì)中小型圖書(shū)館或圖書(shū)室的各種圖書(shū)信息進(jìn)行管理可以給管理員和用戶帶來(lái)以下不同的方便:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高工作效率,也是圖書(shū)館等部門(mén)管理科學(xué)化、正規(guī)化的重要標(biāo)志之一。而且計(jì)算機(jī)管理的成本
25、不斷降低。因此,開(kāi)發(fā)一套這樣的中小型圖書(shū)管理軟件已經(jīng)很有必要,并且實(shí)現(xiàn)研究服務(wù)于實(shí)踐的原則。</p><p> 1.4 圖書(shū)管理系統(tǒng)的可行性分析</p><p> 本次畢業(yè)設(shè)計(jì)題目:“學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)”主要目的是利用數(shù)據(jù)庫(kù)軟件編制一個(gè)管理軟件,用以實(shí)現(xiàn)圖書(shū)、讀者以及日常工作等多項(xiàng)管理。同時(shí)對(duì)整個(gè)系統(tǒng)的分析、設(shè)計(jì)過(guò)程給出一個(gè)完整論證。圖書(shū)管理系統(tǒng)是一種基于集中統(tǒng)一規(guī)劃的數(shù)據(jù)庫(kù)數(shù)據(jù)
26、管理新模式。在對(duì)圖書(shū)、讀者的管理,其實(shí)是對(duì)圖書(shū)、讀者數(shù)據(jù)的管理。本系統(tǒng)的建成無(wú)疑會(huì)為管理者對(duì)圖書(shū)管理系統(tǒng)提供極大的幫助。本系統(tǒng)的設(shè)計(jì)主要從以下幾方面做起:系統(tǒng)業(yè)務(wù)流程分析、系統(tǒng)的功能設(shè)計(jì)、系統(tǒng)的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)等。作這些工作需對(duì)數(shù)據(jù)庫(kù)知識(shí)有足夠認(rèn)識(shí),并深入的了解Visual C#的使用和管理系統(tǒng)的相關(guān)知識(shí)。在信息時(shí)代的今天,人類需要對(duì)在政治、經(jīng)濟(jì)、軍事、文化、科研、教育等領(lǐng)域產(chǎn)生的大量信息進(jìn)行管理,并對(duì)數(shù)據(jù)進(jìn)行加工處理,數(shù)據(jù)庫(kù)技術(shù)則是信息
27、管理與數(shù)據(jù)處理的先進(jìn)技術(shù)。隨著信息量的不斷增加,作為計(jì)算機(jī)的三大主要應(yīng)用(科學(xué)計(jì)算、過(guò)程控制和數(shù)據(jù)處理)之一的數(shù)據(jù)處理,已迅速上升為計(jì)算機(jī)應(yīng)用的主要方面,數(shù)據(jù)庫(kù)技術(shù)則成為人們?nèi)粘I钪刑幚頂?shù)據(jù)不可缺少的有力工具,并且現(xiàn)代的信息管理系統(tǒng)幾乎都以數(shù)據(jù)庫(kù)技術(shù)作為核心。</p><p> 現(xiàn)在大多數(shù)的圖書(shū)管理方式為手工處理,重復(fù)勞動(dòng)多,勞動(dòng)強(qiáng)度大,而且容易出錯(cuò),新系統(tǒng)的使用能否可以很好的解決這些問(wèn)題要看系統(tǒng)的可行性,可
28、行性研究的目的是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決。系統(tǒng)的可行性分析有以下幾個(gè)方面:</p><p> (1)技術(shù)可行性:處理速度快、準(zhǔn)確通過(guò)權(quán)限的設(shè)置,數(shù)據(jù)的安全性好、方便查詢、借閱管理等。 </p><p> (2)經(jīng)濟(jì)可行性:系統(tǒng)建設(shè)不需要很大的投入、可縮減人力投入。</p><p> (3)運(yùn)行上可行性:本系統(tǒng)作為一個(gè)小型的圖書(shū)館信
29、息管理系統(tǒng),所耗費(fèi)的</p><p><b> 資源非常的小。 </b></p><p> (4)從各種社會(huì)因素可行性分析:可降低工作人員工作強(qiáng)度,提高效率,會(huì)</p><p> 得到學(xué)校工作人員的一致同意的。</p><p> 綜上所述通過(guò)可行性分析認(rèn)為新系統(tǒng)的開(kāi)發(fā)方案切實(shí)可行,可進(jìn)行開(kāi)發(fā)。</p>
30、<p> 1.5 系統(tǒng)開(kāi)發(fā)運(yùn)行環(huán)境 </p><p> 系統(tǒng)開(kāi)發(fā)環(huán)境:Microsoft Visual Studio 2005</p><p> 系統(tǒng)開(kāi)發(fā)語(yǔ)言:ASP.net+C#</p><p> 運(yùn)行平臺(tái):Windows XP</p><p> 數(shù)據(jù)庫(kù):SQL Server 2005</p><
31、;p> Web服務(wù)器: IIS5.1 </p><p> 2 圖書(shū)管理系統(tǒng)開(kāi)發(fā)相關(guān)技術(shù)的介紹</p><p> 2.1 Asp.net的介紹</p><p> 2.1.1 Asp.net的優(yōu)勢(shì)介紹</p><p> ASP.Net可完全利用.Net架構(gòu)的強(qiáng)大,安全,高效的平臺(tái)特性。ASP.Net是運(yùn)行在服務(wù)器后端編譯后的
32、普通語(yǔ)言運(yùn)行時(shí)代碼,運(yùn)行時(shí)早綁定(EarlyBinding),即時(shí)編譯,本地優(yōu)化,緩存服務(wù),零安裝配置,基于運(yùn)行時(shí)代碼受管與驗(yàn)證的安全機(jī)制等都為ASP.Net帶來(lái)卓越的性能。 對(duì)XML,SOAP,WSDL等Internet標(biāo)準(zhǔn)的強(qiáng)健支持為Asp.net在異構(gòu)網(wǎng)絡(luò)里提供了強(qiáng)大的擴(kuò)展性。ASP.NET 是一個(gè)已編譯的、基于 .NET 的環(huán)境,可以用任何與 .NET 兼容的語(yǔ)言創(chuàng)作應(yīng)用程序。另
33、外,任何 ASP.NET 應(yīng)用程序都可以使用整個(gè).NET框架。開(kāi)發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點(diǎn),其中包括托管的公共語(yǔ)言運(yùn)行庫(kù)環(huán)境、類型安全、繼承等等。在創(chuàng)建 ASP.NET 應(yīng)用程序、Web 窗體和 Web服務(wù)時(shí),開(kāi)發(fā)人員可以選擇下列兩個(gè)功能,或者以他們認(rèn)為合適的任何方式將它們結(jié)合起來(lái)使用。每個(gè)功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗(yàn)證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對(duì)
34、應(yīng)用程序的配置進(jìn)行自定義,這里只是列出幾種可能性而已?!癢eb 窗體”用于生成功能強(qiáng)大的基于窗體的 Web 頁(yè)。生成這些頁(yè)時(shí)</p><p> 2.1.2 Asp.net的特點(diǎn)</p><p> ASP.net是基于通用語(yǔ)言的編譯運(yùn)行的程序,所以它的強(qiáng)大性和適應(yīng)性,可以使它運(yùn)行在Web應(yīng)用軟件開(kāi)發(fā)者的幾乎全部的平臺(tái)上。通用語(yǔ)言的基本庫(kù),消息機(jī)制,數(shù)據(jù)接口
35、的處理都能無(wú)縫的整合到ASP.net的Web應(yīng)用中。ASP.net同時(shí)也是language-independent語(yǔ)言獨(dú)立化的,所以,你可以選擇一種最適合你的語(yǔ)言來(lái)編寫(xiě)你的程序,或者把你的程序用很多種語(yǔ)言來(lái)寫(xiě),現(xiàn)在已經(jīng)支持的有C#(C++和Java的結(jié)合體),VB,Jscript。將來(lái),這樣的多種程序語(yǔ)言協(xié)同工作的能力保護(hù)您現(xiàn)在的基于COM+開(kāi)發(fā)的程序,能夠完整的移植向ASP.net。</p><p> 2.2
36、 SQL Server 2005 概述</p><p> SQL Server 是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)它是由Microsoft推出的。SQL Server 是一個(gè)具備完全 Web 支持的數(shù)據(jù)庫(kù)產(chǎn)品,提供了對(duì)可擴(kuò)展標(biāo)記語(yǔ)言 (XML) 的核心支持以及在 Internet 上和防火墻外進(jìn)行查詢的能力,提供了以 Web 標(biāo)準(zhǔn)為基礎(chǔ)的擴(kuò)展數(shù)據(jù)庫(kù)編程功能。豐富的 XML 和 Internet 標(biāo)準(zhǔn)支持允許使用內(nèi)置的存
37、儲(chǔ)過(guò)程以 XML 格式輕松存儲(chǔ)和檢索數(shù)據(jù)。</p><p> SQL Server 提供強(qiáng)大的開(kāi)發(fā)工具和各類開(kāi)發(fā)特性,在大大提高開(kāi)發(fā)效率的同時(shí),進(jìn)一步拓展應(yīng)用空間,帶來(lái)新的商業(yè)應(yīng)用機(jī)遇。例如,XML數(shù)據(jù)庫(kù)與Web Service的支持將使您的應(yīng)用實(shí)現(xiàn)Internet數(shù)據(jù)互聯(lián),.net集成極大的擴(kuò)展了開(kāi)發(fā)空間,異構(gòu)數(shù)據(jù)集成、Service Broker使您的數(shù)據(jù)和其它應(yīng)用無(wú)縫集成,各種新數(shù)據(jù)類型和T-SQL擴(kuò)展帶
38、來(lái)了諸多靈活性。C#、VB.net、XQuery、XMLA、ADO.net 2.0、SMO、AMO等都將成為SQL Server數(shù)據(jù)平臺(tái)上開(kāi)發(fā)數(shù)據(jù)相關(guān)應(yīng)用的有力工具。它具有以下特點(diǎn):</p><p><b> (1)上手容易</b></p><p> 大多數(shù)的中小企業(yè)日常的數(shù)據(jù)應(yīng)用是建立在Windows平臺(tái)上的。由于SQL Server與Windows界面風(fēng)格完全
39、一致,且有許多"向?qū)?Wizard)"幫助,因此易于安裝和學(xué)習(xí),有關(guān)SQL Server的資料、培訓(xùn)隨處可得,并且目前國(guó)內(nèi)具有MCDBA認(rèn)證的工程師不在少數(shù)</p><p><b> (2)兼容性良好</b></p><p> 由于今天Windows操作系統(tǒng)占領(lǐng)著主導(dǎo)地的位,選擇SQL Server一定會(huì)在兼容性方面取得一些優(yōu)勢(shì)。另外,SQL
40、Server 2005 除了具有擴(kuò)展性,可靠性以外,還具有可以迅速開(kāi)發(fā)新的因特網(wǎng)系統(tǒng)的功能。尤其是它可以直接存貯 XML 數(shù)據(jù),可以將搜索結(jié)果以 XML格式輸出等特點(diǎn),有利于構(gòu)建了異構(gòu)系統(tǒng)的互操作性,奠定了面向互聯(lián)網(wǎng)的企業(yè)應(yīng)用和服務(wù)的基石。這些特點(diǎn)在.NET 戰(zhàn)略中發(fā)揮著重要的作用。</p><p><b> (3)電子商務(wù)</b></p><p> 在使用由Mi
41、crosoft SQL Server 2005關(guān)系數(shù)據(jù)庫(kù)引擎的情況下,XML數(shù)據(jù)可在關(guān)系表中進(jìn)行存儲(chǔ),而查詢則能以XML格式將有關(guān)結(jié)果返回。此外,XML支持還簡(jiǎn)化了后端系統(tǒng)集成,并實(shí)現(xiàn)了跨防火墻的無(wú)縫數(shù)據(jù)傳輸。你還可以使用Hypertext Transfer Protocol(超文本傳輸協(xié)議,HTTP)來(lái)訪問(wèn)SQL Server 2005,以實(shí)現(xiàn)面向SQL Server 2005數(shù)據(jù)庫(kù)的安全Web連接和無(wú)須額外編程的聯(lián)機(jī)分析處理(OLA
42、P)多維數(shù)據(jù)集。</p><p><b> (4)數(shù)據(jù)倉(cāng)庫(kù)</b></p><p> Microsoft SQL Server 2005非常明顯的改進(jìn)就是增加了OLAP(聯(lián)機(jī)分析處理)功能,這可以讓很多中小企業(yè)用戶也可以使用數(shù)據(jù)倉(cāng)庫(kù)的一些特性進(jìn)行分析。OLAP可以通過(guò)多維存儲(chǔ)技術(shù)對(duì)大型、復(fù)雜數(shù)據(jù)集執(zhí)行快速、高級(jí)的分析工作。數(shù)據(jù)挖掘功能能夠揭示出隱藏在大量數(shù)據(jù)中的傾
43、向及趨勢(shì),它允許組織或機(jī)構(gòu)最大限度的從數(shù)據(jù)中獲取價(jià)值。通過(guò)對(duì)現(xiàn)有數(shù)據(jù)進(jìn)行有效分析,這一功能可以對(duì)未來(lái)的趨勢(shì)進(jìn)行預(yù)測(cè)。</p><p> 2.3 Web技術(shù)</p><p> 2.3.1 瀏覽器/服務(wù)器(Browser/Server)結(jié)構(gòu)</p><p> 隨著Web和Internet計(jì)算環(huán)境的發(fā)展,將使企業(yè)能夠以更快的速度、更低的費(fèi)用去創(chuàng)建和布置企業(yè)的應(yīng)用
44、系統(tǒng),因而,普遍認(rèn)為C/S架構(gòu)將會(huì)被B/S結(jié)構(gòu)取代。Internet為數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)提供了新的機(jī)會(huì),采用B/S結(jié)構(gòu),客戶機(jī)上只要安裝一個(gè)瀏覽器(Browser),如Netscape Navigator或Internet Explores;中間層采用Web服務(wù)器,它接受客戶端的請(qǐng)求,將其轉(zhuǎn)換為SQL語(yǔ)句,通過(guò)ODBC或其他手段傳給數(shù)據(jù)庫(kù)服務(wù)器,并將數(shù)據(jù)庫(kù)服務(wù)器返回的結(jié)果用HTML文件格式傳回給客戶機(jī)??蛻魴C(jī)的要求大大降低,大部分程序在服務(wù)
45、器端執(zhí)行。采用3層體系結(jié)構(gòu)的Web應(yīng)用程序由Web瀏覽器、Web服務(wù)器和數(shù)據(jù)庫(kù)3部分組成,如圖2-1所示。Web瀏覽器與Web服務(wù)器之間的通信仍然遵循HTTP,Web服務(wù)器與數(shù)據(jù)庫(kù)之間的通信遵守CGI(Common Gateway Interface)或者Server API規(guī)范。在采用三層體系結(jié)構(gòu)的Web應(yīng)用程序中,Web瀏覽器向Web服務(wù)器請(qǐng)求某個(gè)HTML文檔或者請(qǐng)求執(zhí)行某個(gè)CGI腳本程序。Web服務(wù)器根據(jù)Web瀏覽器請(qǐng)求的是某個(gè)C
46、GI程序或者API</p><p> 2.3.2 IIS服務(wù)器技術(shù)</p><p> IIS(Internet Information Server Internet信息服務(wù)器)是Microsoft公司開(kāi)發(fā)的一種集Web,F(xiàn)TP和Gopher服務(wù)于一身的服務(wù)器,它可以利用Windows XP Server的各種功能并且能在Internet上發(fā)布信息。IIS是微軟隨著WindowsXP
47、 Server附帶的一個(gè)軟件。IIS提供Internet信息服務(wù)器應(yīng)用程序接口(ISAPI)擴(kuò)展Web服務(wù)器的功能,并可通過(guò)ASP.NET實(shí)現(xiàn)Web程序的快速開(kāi)發(fā),ASP.NET支持服務(wù)器端的JavaScript, VBScript, Microsoft Java和ActiveX Server Component,還支持用VB編寫(xiě)的CGI程序,甚至用VB開(kāi)發(fā)的C/S架構(gòu)的程序不經(jīng)過(guò)修改就可以在Web上發(fā)布,可以使開(kāi)發(fā)動(dòng)態(tài)主頁(yè)更加方便,同
48、時(shí)也保護(hù)了以前的投資。IIS還包括了Microsoft Index Server,可實(shí)現(xiàn)對(duì)本W(wǎng)eb站點(diǎn)內(nèi)容的全文檢索以及Site Server Express用于分析站點(diǎn)訪問(wèn)的情況。IIS的管理功能是基于WindowsXP Server的,可充分利用Windo</p><p> 3 系統(tǒng)總體設(shè)計(jì)分析</p><p> 3.1 系統(tǒng)需求分析</p><p>
49、隨著互聯(lián)網(wǎng)的爆炸性發(fā)展,人們?cè)絹?lái)越習(xí)慣于利用網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)所需的服務(wù),網(wǎng)絡(luò)已深深影響到人們生活的各個(gè)方面。另外,傳統(tǒng)的圖書(shū)館不能滿足一部分現(xiàn)代人的需要,而電子閱覽室,由于其不受時(shí)間與空間的限制同時(shí)又具有傳統(tǒng)圖書(shū)館的大部分功能,能夠滿足各類用戶的常規(guī)與特殊需求,而且其方便快捷,實(shí)現(xiàn)技術(shù)又比較成熟,因此受到當(dāng)代人的喜愛(ài)。</p><p> 該系統(tǒng)主要分為兩部分:讀者部分和管理員部分。為了方便讀者查找自己感興趣的主題進(jìn)行
50、閱讀,要將圖書(shū)按照內(nèi)容進(jìn)行分類。讀者可以按照類別進(jìn)行查找,逐級(jí)瀏覽、可以查看自己的信息。本系統(tǒng)還可對(duì)用戶的賬號(hào)和書(shū)目的閱讀權(quán)限進(jìn)行管理。管理員需要給用戶分配用戶名和密碼,及設(shè)定用戶的級(jí)別,還為用戶提供圖書(shū)的排行榜讓用戶能知道那些圖書(shū)受到大家的歡迎。</p><p> 3.2 系統(tǒng)實(shí)現(xiàn)的目標(biāo) </p><p> 學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)主要要實(shí)現(xiàn)的目標(biāo)有以下幾個(gè)方面:</p>
51、<p> (1)界面設(shè)計(jì)友好、美觀。</p><p> (2)數(shù)據(jù)存儲(chǔ)安全、可靠。</p><p> (3)信息分類清晰、準(zhǔn)確。</p><p> (4)強(qiáng)大的查詢功能,保證數(shù)據(jù)查詢的靈活性。</p><p> (5)實(shí)現(xiàn)對(duì)圖書(shū)借閱和歸還過(guò)程的全程數(shù)據(jù)信息跟蹤。</p><p> (6)提供圖
52、書(shū)借閱排行榜,為圖書(shū)管理員提供了真實(shí)的數(shù)據(jù)信息。</p><p> (7)提供靈活、方便的權(quán)限設(shè)置功能,使整個(gè)系統(tǒng)的管理分工明確。</p><p> (8)具有易維護(hù)性和易操作性。</p><p> 3.3 系統(tǒng)功能模塊設(shè)計(jì)</p><p> (1)系統(tǒng)設(shè)置模塊:添加刪除管理員、設(shè)置管理員的權(quán)限、說(shuō)明圖書(shū)存放書(shū)架信息添加刪除書(shū)架信息
53、。</p><p> (2)讀者管理模塊:添加刪除不同類型的讀者及注明可借圖書(shū)的數(shù)量、添加刪除讀者的檔案。</p><p> (3)圖書(shū)管理模塊:添加刪除不同類型的的圖書(shū)及注明圖書(shū)可借的天數(shù)庫(kù)存數(shù)量、添加刪除圖書(shū)的檔案。</p><p> (4)圖書(shū)借還模塊:可查詢讀者借閱和歸還圖書(shū)的信息及圖書(shū)的現(xiàn)有庫(kù)存量。</p><p> (5)
54、系統(tǒng)查詢模塊:可根據(jù)不同的條件(條形碼、書(shū)名、類別、作者、書(shū)架、出版社)查詢讀者需要的圖書(shū)、讀者可根據(jù)不同的條件(圖書(shū)條形碼、圖書(shū)名稱、讀者編號(hào)、讀者名字、到期時(shí)間)查詢自己借閱圖書(shū)信息。</p><p> (6)排行榜模塊:可以讓讀者知道圖書(shū)借閱的排行榜及讀者借閱的排行榜。</p><p> 3.4 系統(tǒng)功能結(jié)構(gòu)圖</p><p> 根據(jù)圖書(shū)管理系統(tǒng)的實(shí)際
55、需求,可以將圖書(shū)管理系統(tǒng)劃分為系統(tǒng)設(shè)置、圖書(shū)管理、讀者管理、圖書(shū)借還、系統(tǒng)查詢、排行榜6個(gè)部分各個(gè)部分的具體功能的系統(tǒng)功能結(jié)構(gòu)圖如圖3-1所示。</p><p> 圖3-1 系統(tǒng)功能結(jié)構(gòu)圖</p><p> (1)圖書(shū)借閱系統(tǒng)完成用戶的借書(shū)過(guò)程其數(shù)據(jù)流圖如圖3-2所示。</p><p> 圖3-2 借閱系統(tǒng)的數(shù)據(jù)流圖</p><p>
56、; (2)還書(shū)系統(tǒng)完成圖書(shū)的歸還過(guò)程其數(shù)據(jù)流圖如圖3-3所示。</p><p> 圖3-3 歸還系統(tǒng)的數(shù)據(jù)流圖</p><p> ?。?)圖書(shū)檔案管理系統(tǒng)為用戶提供圖書(shū)檔案信息其數(shù)據(jù)流圖如圖3-4所示。</p><p> 圖3-4 圖書(shū)檔案管理數(shù)據(jù)流圖</p><p> ?。?)讀者檔案系統(tǒng)用于記錄讀者的詳細(xì)信息其數(shù)據(jù)流圖如圖3-5
57、所示。</p><p> 圖3-5 讀者檔案管理數(shù)據(jù)流圖</p><p> 3.5 系統(tǒng)流程圖</p><p> 圖書(shū)管理系統(tǒng)的流程是用戶先輸入自己的帳號(hào)密碼及系統(tǒng)顯示的驗(yàn)證碼進(jìn)入系統(tǒng)如有一項(xiàng)不符合則不能進(jìn)入系統(tǒng),成功登陸系統(tǒng)后系統(tǒng)根劇登陸的帳號(hào)信息從數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行對(duì)比判斷是讀者還是管理員,如果是讀者則能進(jìn)行信息查詢,及修改自己的相關(guān)信息,查詢到自己所
58、需要的圖書(shū)就能通過(guò)管理員進(jìn)行借閱圖書(shū)、歸還圖書(shū)也是通過(guò)管理員完成的。如果不是讀者而是管理員,那管理員可以進(jìn)行相關(guān)信息的查詢、添加刪除圖書(shū)及讀者的所有信息、設(shè)置相應(yīng)的權(quán)限、為圖書(shū)更新排行榜的信息、以及完成讀者的圖書(shū)借閱與歸還。圖書(shū)管理系統(tǒng)的系統(tǒng)流程圖如圖3-6所示。</p><p> 圖3-6 圖書(shū)管理系統(tǒng)的流程圖</p><p> 4 數(shù)據(jù)總體結(jié)構(gòu)設(shè)計(jì)</p><
59、;p> 4.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)</p><p> 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)是在需求分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿足用戶需求的各種實(shí)體,以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。這個(gè)階段不用考慮所采用的數(shù)據(jù)庫(kù)管理系統(tǒng)、操作系統(tǒng)類型、機(jī)器類型等問(wèn)題。這階段可用的工具很多。用的最多的是E-R圖(Entity-Relation,實(shí)體-關(guān)系圖),另外還有許多計(jì)算機(jī)輔助工具(Computer Aided Sof
60、tware Engineering, CASE)可以幫助進(jìn)行設(shè)計(jì)。本系統(tǒng)采用了E-R圖的方法進(jìn)行數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)。E-R圖是描述數(shù)據(jù)實(shí)體關(guān)系的一種直觀描述工具。這種圖中有:</p><p> (1)實(shí)體:用方框表示,方框內(nèi)為實(shí)體的名稱。</p><p> (2)實(shí)體的各種屬性:用橢圓表示,橢圓內(nèi)為屬性名稱。使用線段將其和響應(yīng)的實(shí)體連接起來(lái)。</p><p>
61、 (3)實(shí)體之間的聯(lián)系:用菱形表示,菱形內(nèi)為聯(lián)系的名稱。</p><p> 實(shí)體和實(shí)體之間的聯(lián)系較多,比較常見(jiàn)的聯(lián)系有l(wèi):1,l:N和M:N這三種。</p><p> 4.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 概念結(jié)構(gòu)是獨(dú)立于實(shí)際數(shù)據(jù)模型的信息結(jié)構(gòu),必須將其轉(zhuǎn)化為邏輯結(jié)構(gòu)后才能進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用的設(shè)計(jì)。也就是要將概念上的結(jié)構(gòu)轉(zhuǎn)化為數(shù)據(jù)庫(kù)系統(tǒng)所支持的實(shí)際數(shù)據(jù)模
62、型。</p><p> 第一種轉(zhuǎn)化是將實(shí)體轉(zhuǎn)化為關(guān)系表。這種轉(zhuǎn)化較簡(jiǎn)單,需要將實(shí)體的屬性定義為表的屬性即可。</p><p> 第二種轉(zhuǎn)化是聯(lián)系的轉(zhuǎn)化。即將各個(gè)實(shí)體之間的聯(lián)系轉(zhuǎn)化為表格之間的關(guān)系,如外部鍵的定義。</p><p> 在上面工作的基礎(chǔ)上歸納出人員管理數(shù)據(jù)庫(kù)表格的組成之間的聯(lián)系等等。該數(shù)據(jù)庫(kù)系統(tǒng)具有以下方面的特點(diǎn):</p><p
63、> 結(jié)構(gòu)合理,對(duì)一個(gè)人員建立多條記錄。</p><p> 所建立的數(shù)據(jù)冗余度小,獨(dú)立性強(qiáng)。</p><p> 建檔、修改、查詢、統(tǒng)計(jì)快速而準(zhǔn)確。</p><p> 保密性好、可靠性好。 </p><p> 圖書(shū)管理系統(tǒng)中要有圖書(shū),圖書(shū)是圖書(shū)管理系統(tǒng)中密不可分的部分,因此要?jiǎng)?chuàng)建一圖書(shū)信息實(shí)體,用來(lái)保存圖書(shū)的詳細(xì)信息。圖書(shū)信息實(shí)體
64、屬性圖如圖4-1所示。</p><p> 圖4-1 圖書(shū)信息實(shí)體屬性圖</p><p> 讀者是圖書(shū)管理系統(tǒng)重要組成部分,這里創(chuàng)建了一個(gè)讀者信息實(shí)體,用來(lái)存儲(chǔ)讀者的詳細(xì)信息。讀者信息實(shí)體E-R圖如圖4.2所示。</p><p> 圖4-2 讀者信息實(shí)體屬性圖</p><p> 圖書(shū)的借閱和歸還是圖書(shū)管理系統(tǒng)中的一項(xiàng)重要的環(huán)節(jié),開(kāi)發(fā)
65、圖書(shū)管理系統(tǒng)就是為了方便讀者對(duì)圖書(shū)的借閱和歸還,因此要建立一個(gè)圖書(shū)借還實(shí)體,用來(lái)保存讀者對(duì)圖書(shū)的借閱和歸還的詳細(xì)信息。圖書(shū)的借閱和歸還實(shí)體屬性圖如圖4-3所示。</p><p> 圖4-3 讀者借還實(shí)體屬性圖</p><p> 圖書(shū)管理系統(tǒng)為了增加系統(tǒng)的安全性,管理員只有在系統(tǒng)登陸模塊驗(yàn)證通過(guò)后才能進(jìn)入管理員的操作界面,因此套在數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)存放登錄用戶信息的管理員實(shí)體。管理員實(shí)體
66、屬性圖如圖4-4所示。</p><p> 圖4-4 管理員實(shí)體屬性圖</p><p> 4.3 圖書(shū)管理系統(tǒng)的系統(tǒng)E-R圖</p><p> 圖書(shū)管理系統(tǒng)的系統(tǒng)E-R圖如圖4-5所示。</p><p> 圖4-5 圖書(shū)管理系統(tǒng)的系統(tǒng)E-R圖</p><p> 4.4 數(shù)據(jù)表設(shè)計(jì)</p>
67、<p> 本系統(tǒng)使用的數(shù)據(jù)庫(kù)管理系統(tǒng)為SQL Server 2005。數(shù)據(jù)庫(kù)中的表有管理員信息表、圖書(shū)信息表、讀者信息表、管理員權(quán)限表、圖書(shū)借閱歸還表等。</p><p> 圖書(shū)管理員基本信息表tb_admin,如表4-6所示。</p><p> 表4-6 tb_admin(管理員)表 </p><p> 讀者詳細(xì)信息表tb_reader,如表4
68、-7所示。</p><p> 表4-7 tb_reader(讀者信息)表</p><p> 圖書(shū)詳細(xì)信息表tb_bookkifo,如表4-8所示。</p><p> 表4-8 tb_bookkifo(圖書(shū)信息)表</p><p> 圖書(shū)借閱和歸還信息表tb_borrowandback,如表4-9所示。</p><
69、;p> 表4-9 tb_borrowandback(圖書(shū)借閱和歸還信息)表</p><p> 權(quán)限信息表tb_purview,如表4-10所示。</p><p> 表4-10 tb_purview(權(quán)限信息)表</p><p> 5 圖書(shū)管理系統(tǒng)詳細(xì)設(shè)計(jì)</p><p> 5.1 系統(tǒng)流程分析</p>&
70、lt;p> 根據(jù)開(kāi)發(fā)圖書(shū)管理系統(tǒng)的需求分析,本系統(tǒng)設(shè)計(jì)了三種用戶,分別為系統(tǒng)管理員、教師和學(xué)生。</p><p> 系統(tǒng)要求有系統(tǒng)管理員用戶,我們?cè)O(shè)定系統(tǒng)管理員,當(dāng)系統(tǒng)管理員使用帳戶登錄后,需要查看有關(guān)圖書(shū)的一系列的信息,管理員可以通過(guò)系統(tǒng)導(dǎo)航菜單進(jìn)入讀者管理界面、圖書(shū)管理界面、圖書(shū)借還界面、系統(tǒng)查詢界面、排行榜界面,在讀者界面中,管理員添加和修改學(xué)生或教師信息、用戶可以查看自己信息,在圖書(shū)管理界面管理
71、員可以添加和修改圖書(shū)信息、用戶可查看圖書(shū),在圖書(shū)借還界面完成讀者借書(shū)還書(shū)的操作,系統(tǒng)查詢界面管理員可以查看借出去的圖書(shū)信息及庫(kù)存的信息、用戶可以查找自己的所需的圖書(shū),排行榜界面主要是可以讓用戶知道哪些圖書(shū)受到讀者的喜愛(ài)。讀者(老師和學(xué)生)使用讀者帳號(hào)登陸系統(tǒng)后,可以查詢自己所需要的圖書(shū)的信息、也可以查詢自己個(gè)人的基本信息及圖書(shū)的借還信息,還能查看排行榜的信息。讀者的借書(shū)和還書(shū)過(guò)程是通過(guò)管理員完成的。</p><p&g
72、t; 5.2 主要模塊的運(yùn)行</p><p> 5.2.1 登陸界面</p><p> 當(dāng)用戶輸入用戶名、密碼,系統(tǒng)自動(dòng)將輸入的信息和相關(guān)數(shù)據(jù)表中的內(nèi)容進(jìn)行比較,如果該用戶輸入的內(nèi)容和數(shù)據(jù)表中的內(nèi)容相符,則通過(guò)驗(yàn)證,此次登錄成功;否則登錄失敗。比較的過(guò)程是由瀏覽器將指令,數(shù)據(jù)發(fā)送到Web服務(wù)器,Web服務(wù)器通過(guò)對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢將結(jié)果返回到瀏覽器,從而端顯示成功的消息,用戶只有成功
73、登陸系統(tǒng)后才能進(jìn)行一系列的操作,如下圖5-1所示。</p><p> 5-1 圖書(shū)管理系統(tǒng)登陸界面</p><p> 5.2.2 圖書(shū)信息管理模塊</p><p> 圖書(shū)信息管理模塊主要分為查看圖書(shū)信息頁(yè)面和添加修改圖書(shū)信息頁(yè)面,用戶可以在查看圖書(shū)信息頁(yè)面查看圖書(shū)的基本信息,管理員也可以看這些信息,并且可以通過(guò)單擊“添加圖書(shū)信息”這個(gè)超級(jí)鏈接或GridVi
74、ew控件中的“詳情”超級(jí)鏈接轉(zhuǎn)到添加或刪除圖書(shū)信息界面,并在該頁(yè)中添家或修改圖書(shū)信息,如圖5-2與5-3所示。</p><p> 圖5-2 查看圖書(shū)信息界面</p><p> 圖5-3 添家或修改圖書(shū)信息界面</p><p> 圖書(shū)信息管理模塊的實(shí)現(xiàn),主要是使用了ADO.NET操作數(shù)據(jù)庫(kù)技術(shù)。</p><p> 在使用ADO.NE
75、T技術(shù)操作數(shù)據(jù)庫(kù)時(shí),主要用到了Connection、Command、DataAdaper和DataSet4個(gè)對(duì)象重要負(fù)責(zé)在Connection對(duì)象主要負(fù)責(zé)連接數(shù)據(jù)庫(kù),Command對(duì)象主要負(fù)責(zé)生成并執(zhí)行SQL語(yǔ)句,DataAdaper對(duì)象主要負(fù)責(zé)在Command對(duì)象執(zhí)行完SQL語(yǔ)句后生成并填充DataSet和DataTable,而DataSet對(duì)象主要負(fù)責(zé)存取和更新數(shù)據(jù)。</p><p> 5.2.3 圖書(shū)借
76、還信息模塊</p><p> 圖書(shū)借還管理模塊主要分為圖書(shū)借閱頁(yè)面和圖書(shū)歸還頁(yè)面,用戶可以在通過(guò)這個(gè)模塊查看圖書(shū)的借閱和歸還信息。管理員可以在圖書(shū)通過(guò)這個(gè)模塊來(lái)完成讀者借和還書(shū)的操作,如圖5-4與5-5所示。</p><p> 圖5-4 圖書(shū)的借閱管理</p><p> 圖5-5 圖書(shū)歸還管理</p><p> 實(shí)現(xiàn)圖書(shū)的借還功能
77、主要用到了GridView模板列技術(shù)。</p><p> 5.3 系統(tǒng)開(kāi)發(fā)的遇到的相關(guān)問(wèn)題及解決</p><p> 5.3.1 圖書(shū)管理系統(tǒng)索引 </p><p> 圖書(shū)管理系統(tǒng)開(kāi)發(fā)中存在大量的數(shù)據(jù)和信息檢索,怎樣更好的檢索數(shù)據(jù)和信息操作是保證檢索速度的提高和數(shù)據(jù)的分頁(yè)顯示,主要考慮了以下幾個(gè)方面:</p><p> (1)設(shè)計(jì)邏
78、輯結(jié)構(gòu)時(shí)充分考慮冗余量和可處理性兩方面的要求,在接受冗余量的提下,盡量減少表的連接操作。</p><p> (2)關(guān)系的大小對(duì)查詢的影響也是很大的,因此為了提高數(shù)據(jù)庫(kù)的查詢速度,減小系的大小和數(shù)據(jù)量也是必要的。</p><p> (3)建立合理的索引結(jié)構(gòu)。索引相當(dāng)于一個(gè)映射機(jī)構(gòu),將鍵值轉(zhuǎn)換成相對(duì)應(yīng)的</p><p> 記錄地址,形成索引文件。</p>
79、;<p> 索引設(shè)計(jì)是數(shù)據(jù)庫(kù)物理設(shè)計(jì)的基本問(wèn)題,也是較困難的問(wèn)題,建立索引可以極大地提高系統(tǒng)的查詢速度,但是同時(shí)做Insert、Update、Delete操作時(shí)會(huì)降低速度,因?yàn)樽鲞@些操作的同時(shí)需要更新索引,所以不能對(duì)數(shù)據(jù)庫(kù)中所有的表都建立索引。比如滿足下列條件之一的不易建立索引:不出現(xiàn)或很少出現(xiàn)的屬性或表、屬性分布嚴(yán)重不均的屬性、經(jīng)常更新的屬性或表、過(guò)長(zhǎng)的屬性、太小的表等。</p><p> 滿
80、足下列條件之一的可以考慮建立索引:主鍵和外鍵都建立索引、對(duì)于以讀為主或只讀的表,只要需要,且存儲(chǔ)空間允許,可以減少連接開(kāi)銷(xiāo)、對(duì)于等值查詢(即查詢條件以等號(hào)為比較符),最好建立索引、對(duì)查詢范圍(即查詢條件>,<,≤,≥為比較符),最好建立索引、有些查詢可以由檢索直接得到結(jié)果,不必訪問(wèn)數(shù)據(jù)塊。</p><p> 根據(jù)實(shí)際需要,讀者信息表,圖書(shū)信息表,圖書(shū)借還信息表,權(quán)限信息,管理員信息表等都建立索引,合
81、理使用緩沖區(qū)。</p><p> 5.3.2 如何驗(yàn)證輸入的字符串</p><p> 在圖書(shū)管理系統(tǒng)的開(kāi)發(fā)過(guò)程中,需要對(duì)一些輸入的字符串進(jìn)行驗(yàn)證,例如金額、電話號(hào)碼、E-mail等,由于許多模塊都需要用到這些驗(yàn)證,因此可以將其寫(xiě)入到一個(gè)公共類中然后在其他的頁(yè)面中直接調(diào)用即可。C#中對(duì)字符串進(jìn)行驗(yàn)證時(shí),可以使用Regex類,要使用正則表達(dá)式驗(yàn)證輸入的字符串,如驗(yàn)證輸入的字符串是否為E-
82、mail的地址格式的實(shí)現(xiàn)方法。代碼如下:</p><p> #region 驗(yàn)證輸入為Email</p><p> /// <summary></p><p> /// 驗(yàn)證輸入為Email</p><p> /// </summary></p><p> /// <param
83、 name="str"></param></p><p> /// <returns></returns></p><p> public bool validateEmail(string str)</p><p><b> {</b></p><p>
84、; return Regex.IsMatch(str, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");</p><p><b> }</b></p><p> #endregion</p><p> 5.3.3 自動(dòng)計(jì)算圖書(shū)歸還日期</p>
85、<p> 在圖書(shū)管理系統(tǒng)運(yùn)行中會(huì)常常遇到這樣的問(wèn)題:在借閱圖書(shū)時(shí),需要自動(dòng)計(jì)算圖書(shū)的歸還日期,而這個(gè)日期又不是固定不變的,它是需要根據(jù)系統(tǒng)日期和數(shù)據(jù)表中保存的各類圖書(shū)的最多借閱天數(shù)來(lái)計(jì)算的,即圖書(shū)歸還日期=“系統(tǒng)日期”+“最多借閱天數(shù)”。因此本系統(tǒng)是這樣解決問(wèn)題的:首先獲取系統(tǒng)時(shí)間,然后從數(shù)據(jù)表中查詢出該類圖書(shū)最多借閱天數(shù),最后計(jì)算歸還日期。計(jì)算方法如下:</p><p> 首先取出所借圖書(shū)的最多借
86、閱天數(shù),然后根據(jù)圖書(shū)的最多借閱天數(shù),使用TimeSpan.FromDays方法返回一個(gè)TimeSpan,最后使用當(dāng)前時(shí)間與先返回的Timespan時(shí)間間隔相加。</p><p> 自動(dòng)計(jì)算圖書(shū)歸還日期的關(guān)鍵代碼如下:</p><p> int days = Convert.ToInt32(btypemanage.FindBTypeByName(btypemanage,</p>
87、;<p> "tb_booktype").Tables[0].Rows[0][2].ToString()); </p><p> TimeSpan tspan = TimeSpan.FromDays((double)days); </p><p> borrowandbackmanage.YGBackTime = borrowandbackman
88、age.BorrowTime + tspan; </p><p> 5.3.4 系統(tǒng)登陸驗(yàn)證碼的實(shí)現(xiàn)</p><p> 在學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)過(guò)程中,怎么樣防止某些人利用某些惡意的軟件對(duì)圖書(shū)管理系統(tǒng)進(jìn)行惡意的登陸來(lái)攻擊系統(tǒng),增加圖書(shū)管理系統(tǒng)的安全性是一個(gè)重要的問(wèn)題。在圖書(shū)管理系統(tǒng)的登陸模塊中加入一個(gè)驗(yàn)證碼的功能,即用戶除了要輸入帳號(hào)和密碼還要輸入系統(tǒng)為用戶提供的驗(yàn)證碼。驗(yàn)證碼可以很
89、好的解決了怎樣防止惡意用戶利用惡意軟件對(duì)系統(tǒng)頁(yè)面的瘋狂提交、以及暴力破解密碼進(jìn)行登陸的問(wèn)題。因此,設(shè)置一個(gè)隨機(jī)函數(shù)在數(shù)字0~9和英文字母A~Z中隨機(jī)抽取四個(gè),在用戶打開(kāi)登陸界面的時(shí)候,系統(tǒng)通過(guò)隨機(jī)生成器隨機(jī)生成4個(gè)數(shù)字或字母或數(shù)字加字母存放在緩存內(nèi),并出現(xiàn)在界面上順序是隨機(jī)的,當(dāng)用戶登陸時(shí)輸入的驗(yàn)證碼要與緩存中的進(jìn)行對(duì)比符合就進(jìn)入,不符合就不能登陸。系統(tǒng)在提供驗(yàn)證碼時(shí)候要加入一些干擾的條件的,不過(guò)這些人的肉眼是很容易分辨,但機(jī)器人程序不
90、能分辨,很好的防止某人利用機(jī)器人程序?qū)ο到y(tǒng)的惡意操作增加了系統(tǒng)的安全性。驗(yàn)證碼實(shí)現(xiàn)的關(guān)鍵代碼如下:</p><p> private string GenerateCheckCode()</p><p><b> {</b></p><p> int number;</p><p> char code;<
91、/p><p> string checkCode = String.Empty;</p><p> System.Random random = new Random();</p><p> for (int i = 0; i < 4; i++)</p><p><b> {</b></p>&l
92、t;p> number = random.Next();</p><p> if (number % 2 == 0)</p><p> code = (char)('0' + (char)(number % 10));</p><p><b> else</b></p><p> code
93、 = (char)('A' + (char)(number % 26));</p><p> checkCode += code.ToString();</p><p><b> }</b></p><p> Response.Cookies.Add(new HttpCookie("CheckCode"
94、, checkCode));</p><p> return checkCode;</p><p><b> } </b></p><p> private void CreateCheckCodeImage(string checkCode)</p><p><b> {</b></
95、p><p> if (checkCode == null || checkCode.Trim() == String.Empty)</p><p><b> return;</b></p><p> System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceilin
96、g((checkCode.Length * 12.5)), 22);</p><p> Graphics g = Graphics.FromImage(image);</p><p><b> try</b></p><p><b> {</b></p><p><b> //生成
97、隨機(jī)生成器</b></p><p> Random random = new Random();</p><p><b> //清空?qǐng)D片背景色</b></p><p> g.Clear(Color.White);</p><p> //畫(huà)圖片的背景噪音線</p><p> f
98、or (int i = 0; i < 2; i++)</p><p><b> {</b></p><p> int x1 = random.Next(image.Width);</p><p> int x2 = random.Next(image.Width);</p><p> int y1 = ra
99、ndom.Next(image.Height);</p><p> int y2 = random.Next(image.Height);</p><p> g.DrawLine(new Pen(Color.Black), x1, y1, x2, y2);</p><p><b> }</b></p><p>&l
100、t;b> 6 結(jié)論</b></p><p> 經(jīng)過(guò)幾個(gè)月的設(shè)計(jì)和開(kāi)發(fā),學(xué)校圖書(shū)管理系統(tǒng)基本開(kāi)發(fā)完畢。其功能基本符合用戶需求。對(duì)于數(shù)據(jù)的一致性的問(wèn)題也通過(guò)程序進(jìn)行了有效的解決。但是該系統(tǒng)還有許多不盡如人意的地方,在今后有待進(jìn)一步改善。通過(guò)這次畢業(yè)設(shè)計(jì)真切地體會(huì)到畢業(yè)設(shè)計(jì)的目的并不止于自己?jiǎn)渭內(nèi)蝿?wù)的完成,而在于學(xué)習(xí)新的知識(shí)并掌握具體的方法,如何具體使用和具體應(yīng)用你所學(xué)所用的語(yǔ)言。從而獲得一種本
101、領(lǐng):就是融會(huì)貫通各種語(yǔ)言?;厥渍麄€(gè)開(kāi)發(fā)設(shè)計(jì)過(guò)程,我學(xué)到了很多書(shū)本上學(xué)不到的東西。比如以前開(kāi)發(fā)軟件的時(shí)候,一般做的就是編碼工作,實(shí)現(xiàn)比較簡(jiǎn)單的功能。但是這次畢業(yè)設(shè)計(jì),我要負(fù)責(zé)圖書(shū)管理系統(tǒng)的整個(gè)開(kāi)發(fā)過(guò)程,包括系統(tǒng)可行性分析、系統(tǒng)需求分析、系統(tǒng)概要設(shè)計(jì)、系統(tǒng)詳細(xì)設(shè)計(jì)等方面的工作。在每個(gè)設(shè)計(jì)階段我都能學(xué)到一些新知識(shí),對(duì)我的動(dòng)手能力提高很大。在整個(gè)畢業(yè)設(shè)計(jì)過(guò)程中,我基本上完成了圖書(shū)管理系統(tǒng)各個(gè)模塊的功能,達(dá)到了畢業(yè)設(shè)計(jì)的要求。頁(yè)面設(shè)計(jì)還有進(jìn)一步改
102、善的地方,我會(huì)在今后的學(xué)習(xí)工作中著重加強(qiáng)這方面的鍛煉。</p><p> 在以后的工作中,還會(huì)遇到很多類似的情況,此次畢業(yè)設(shè)計(jì)為我以后的工作積累了很多寶貴的經(jīng)驗(yàn)。這幾個(gè)月中,從接到設(shè)計(jì)課題到具體設(shè)計(jì)再到完成系統(tǒng)開(kāi)發(fā),是一個(gè)不斷地遇到問(wèn)題與解決問(wèn)題的過(guò)程。其中包括:分析各種需求、完善各種功能、增加必要環(huán)節(jié)、對(duì)各部分及整體進(jìn)行檢測(cè)與維護(hù)。當(dāng)然仍存在許多問(wèn)題不能解決地盡善盡美,還需不斷地繼續(xù)與探索。在結(jié)束設(shè)計(jì)的同時(shí)也
103、感到了勞動(dòng)的艱辛與勞動(dòng)成果的來(lái)之不易,明白了畢業(yè)設(shè)計(jì)是給自己提供了一個(gè)鍛煉、升華、提高、完善的機(jī)會(huì)。</p><p> 6.1 主要研究?jī)?nèi)容及成果</p><p> 介紹學(xué)校圖書(shū)管理系統(tǒng)根據(jù)實(shí)際的需求及發(fā)展情況進(jìn)行設(shè)計(jì)與開(kāi)發(fā)情況,及介紹本系統(tǒng)設(shè)計(jì)應(yīng)用平臺(tái)及技術(shù)支持講述本系統(tǒng)設(shè)計(jì)理念及具體設(shè)計(jì)情況,講解本系統(tǒng)具體制作方法及核心代碼。開(kāi)發(fā)的圖書(shū)管理系統(tǒng)基本上能完成預(yù)期的目標(biāo),大致能滿足讀
104、者和管理員的要求。不過(guò)也有一些不足之處需要好好改進(jìn)。</p><p> 6.2 今后進(jìn)一步研究方向</p><p> (1) 對(duì)頁(yè)面進(jìn)行美化,使界面變的更美觀一點(diǎn)。</p><p> (2) 增加數(shù)據(jù)轉(zhuǎn)換接口,使得本系統(tǒng)能與學(xué)校圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)進(jìn)行無(wú)縫連接。</p><p> (3) 添加系統(tǒng)功能,本系統(tǒng)只有讓讀者知道還書(shū)的期限,
105、當(dāng)圖書(shū)超期而讀者也沒(méi)注意要自己所借圖書(shū)超期了,就無(wú)法及時(shí)的還書(shū)了,因此增加圖書(shū)到期催還功能,能讓讀者在自己信息查詢時(shí)候就能看到系統(tǒng)對(duì)自己所借圖書(shū)的超期提醒以方便讀者的圖書(shū)歸還。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 劉乃麗.精通ASP.NET2.0+SQLServer 2005項(xiàng)目開(kāi)發(fā).[M].北京:人民郵電出版社, 2007:10
106、0~150.</p><p> [2] 易向東,陳蓓,萬(wàn)英編著.C#程序員開(kāi)發(fā)指南[M].北京:北京希望電子出版社,2006:212~232.</p><p> [3] (美)內(nèi)格爾,伊夫杰,格林等.C#高級(jí)編程(第四版)[M].李敏波.北京:清華大學(xué)出版社,2006:80~100.</p><p> [4] (美)Kaili Watson .C#2005數(shù)據(jù)
107、庫(kù)編程經(jīng)典教程[M].人民郵電出版社,2007:90~120.</p><p> [5] (美)沃爾特,本-甘,薩卡.Microsoft SQL Server 2005技術(shù)內(nèi)幕-T-SQL程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2007:50~80.</p><p> [6] 劉燁,季石磊等.C#編程及應(yīng)用程序開(kāi)發(fā)教程[M].北京:清華大學(xué)出版社,2007:132~180.</p&
108、gt;<p> [7] 殷泰暉,張強(qiáng),楊豹等C#編程從基礎(chǔ)到實(shí)踐,電子工業(yè)出版社,2007:100~120 </p><p> [8]李永平.ASP.NET 2.0(C#)基礎(chǔ)教程[M] .北京:清華大學(xué)出版社,2008:123~143.</p><p> [9] 微軟公司著.熊盛新,許志慶,李欽譯.Visual C# .NET語(yǔ)言參考手冊(cè)[M].北京:清華大學(xué)出版社
109、,2002年:160~180.</p><p> [10] 王珊,薩師煊.數(shù)據(jù)庫(kù)系統(tǒng)概論(第四版)[M].高等教育出版社,2006:70~100.</p><p> [11] 馬軍.精通ASP.NET2.0網(wǎng)絡(luò)應(yīng)用系統(tǒng)開(kāi)發(fā)[M].人民郵電出版社,2006:110~140.</p><p> [12]歐立奇,康祥順,馬煜編著.Visual C# .NET 案例開(kāi)
110、發(fā)集錦[M].北京:電子工業(yè)出版社,2006:233~245.</p><p><b> 致 謝</b></p><p> 為期四年的大學(xué)本科的學(xué)習(xí)生活即將結(jié)束,在此,感謝我的家人,是他們的支持和鼓勵(lì)使我有了四年美好的大學(xué)時(shí)光。我要感謝所有曾經(jīng)教導(dǎo)過(guò)我的老師和關(guān)心過(guò)我的同學(xué),感謝他們?cè)谖覍W(xué)習(xí)成長(zhǎng)過(guò)程中所給予我的幫助。</p><p> 這
111、次畢業(yè)設(shè)計(jì)能成功完成,要特別感謝我的指導(dǎo)老師**老師,感謝許老師對(duì)我的作品提出的建議和指導(dǎo)。在整個(gè)設(shè)計(jì)階段,許老師在我有困難的時(shí)候細(xì)心為我指導(dǎo),給了我很大的幫助。在論文完成之際,謹(jǐn)向我尊敬的導(dǎo)師表示誠(chéng)摯的謝意,感謝許老師對(duì)我的關(guān)心和幫助。在整個(gè)系統(tǒng)的開(kāi)發(fā)過(guò)程中,同學(xué)和朋友給了我很大的幫助。感謝給予我?guī)椭耐瑢W(xué)和朋友們,他們?cè)谖业恼麄€(gè)設(shè)計(jì)過(guò)程中給我提供了大量的技術(shù)指導(dǎo)和實(shí)踐機(jī)會(huì)。</p><p><b>
溫馨提示
- 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. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫(kù)設(shè)計(jì)畢業(yè)論文---學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)
- 數(shù)據(jù)庫(kù)設(shè)計(jì)畢業(yè)論文-- 學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)(含外文翻譯)
- 計(jì)算機(jī)數(shù)據(jù)庫(kù)設(shè)計(jì)畢業(yè)論文--學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)
- 圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
- 畢業(yè)論文 學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)
- 圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
- 圖書(shū)管理系統(tǒng)──數(shù)據(jù)庫(kù)庫(kù)分析與表結(jié)構(gòu)設(shè)計(jì)【畢業(yè)論文設(shè)計(jì)】
- oracle數(shù)據(jù)庫(kù)設(shè)計(jì) 圖書(shū)管理系統(tǒng)
- 學(xué)校圖書(shū)管理系統(tǒng)的開(kāi)發(fā)畢業(yè)論文-(新)
- 圖書(shū)管理系統(tǒng)──數(shù)據(jù)庫(kù)庫(kù)分析與表結(jié)構(gòu)設(shè)計(jì)【畢業(yè)論文設(shè)計(jì)】
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--圖書(shū)管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)原理課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
- 學(xué)校圖書(shū)管理系統(tǒng)畢業(yè)論文
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--- 圖書(shū)管理系統(tǒng)
- 圖書(shū)管理系統(tǒng)—數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-圖書(shū)管理系統(tǒng)
- 圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論