網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)l論文(本科)_第1頁
網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)l論文(本科)_第2頁
網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)l論文(本科)_第3頁
網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)l論文(本科)_第4頁
網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計(jì)l論文(本科)_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 山東xx大學(xué)x學(xué)院·課程設(shè)計(jì)課程名稱: 網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計(jì) 班 級: 指導(dǎo)教師: 學(xué)生姓名: 學(xué) 號: 時(shí)間進(jìn)度: 2014年6月30日- 2014年7月11日 所屬學(xué)期:20132014學(xué)年第 2學(xué)期 第18-19周目錄摘 要3第一章 為什么要開發(fā)一個(gè)圖書館信息管理系統(tǒng)31.1 計(jì)算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手:41.2 在學(xué)校使用計(jì)算機(jī)管理圖書的意義41.3 圖書館信息管理系統(tǒng)的設(shè)計(jì)分析4第二章 怎樣開發(fā)一個(gè)圖書館信息管理系統(tǒng)42.1 編程環(huán)境的選擇42.2 關(guān)系型數(shù)據(jù)庫的實(shí)現(xiàn)5第三章 Windows環(huán)境下的Visual FoxPro簡介53.1 Visual Foxpr

2、o簡介5第四章 使用Visual FoxPro實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫64.1 數(shù)據(jù)庫的概念64.2 新建一個(gè)數(shù)據(jù)庫74.3創(chuàng)建數(shù)據(jù)庫7第五章 系統(tǒng)的總體規(guī)劃95.1 系統(tǒng)功能95.1.1 系統(tǒng)的功能描述95.1.2 圖書館信息管理系統(tǒng)功能的定位95.1.3 圖書館信息管理系統(tǒng)的開發(fā)目標(biāo)95.1.4圖書館信息管理系統(tǒng)的邊界定義9第六章 系統(tǒng)的具體實(shí)現(xiàn)96.1 系統(tǒng)的開發(fā)平臺96.2 用戶界面的設(shè)計(jì)10第七章 結(jié)束語15參考文獻(xiàn)16附:程序清單16     摘要學(xué)校圖書館信息管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩

3、個(gè)方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的數(shù)據(jù)庫,而對于后者則要求應(yīng)用程序功能完備,操作簡單,使用方便等特點(diǎn)。經(jīng)過分析,我使用Microsoft公司的Visual Foxpro6.0作為后臺數(shù)據(jù)庫,前臺采用 Visual Foxpro6.0開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)庫設(shè)計(jì)器這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后對初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。接下來是關(guān)于該系統(tǒng)的整個(gè)設(shè)計(jì)開發(fā)過程的介紹。論文首先介紹了為什么要開發(fā)學(xué)校圖書館信息管理系統(tǒng),從三個(gè)方面闡述了開發(fā)本系統(tǒng)的意義。

4、緊接著從編程環(huán)境的選擇和關(guān)系型數(shù)據(jù)庫的實(shí)現(xiàn)兩個(gè)方面入手介紹了怎樣開發(fā)一個(gè)圖書館信息管理系統(tǒng)。論文的第三章對Windows下  Visual Foxpro6.0編程環(huán)境進(jìn)行了較為詳細(xì)的介紹。Visual Foxpro6.0憑借其事件驅(qū)動的應(yīng)用程序、 簡潔的Visual FoxPro語言與函數(shù)、 面向?qū)ο蟮木幊獭?支持跨平臺開發(fā)以及 與數(shù)據(jù)庫良好的連接性等一系列的優(yōu)點(diǎn)成為開發(fā)本應(yīng)用系統(tǒng)的首選開發(fā)工具。第四章則重點(diǎn)介紹了Visual Foxpro6.0關(guān)系數(shù)據(jù)庫的概念,以及數(shù)據(jù)庫的創(chuàng)建與連接過程。接下來的一章里對系統(tǒng)功能與流程圖進(jìn)行了介紹。本系統(tǒng)是針對校園圖書館的日常管理工作而設(shè)計(jì)的, 能

5、夠完成從圖書的采購到入庫,外借到收回,借書證的辦理等功能。其中包括了:逾期滯納金的收取,丟失圖書的處理等等各個(gè)方面的工作。系統(tǒng)流程圖則詳細(xì)說明了系統(tǒng)各主要功能的流程情況。論文的第六章分別介紹了用戶界面的實(shí)現(xiàn)與數(shù)據(jù)庫的實(shí)現(xiàn),包括各級菜單的實(shí)現(xiàn)及數(shù)據(jù)庫中每一張表的詳細(xì)說明。文章的最后是對本次設(shè)計(jì)的總結(jié)以及致謝,同時(shí)附上了主要的參考文獻(xiàn)及程序清單。 關(guān)鍵字:面向?qū)ο?、窗口、?shù)據(jù)庫設(shè)計(jì)器第一章 為什么要開發(fā)一個(gè)圖書館信息管理系統(tǒng)  1.1 計(jì)算機(jī)已經(jīng)成為我們學(xué)習(xí)和工作的得力助手:今天,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長足的進(jìn)步。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計(jì)算機(jī)之所以如此

6、流行的原因主要有以下幾個(gè)方面:首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動;其次,計(jì)算機(jī)可以節(jié)省許多資源;第三,計(jì)算機(jī)可以大大的提高人們的工作效率;第四,計(jì)算機(jī)可以使敏感文檔更加安全,等等。1.2 在學(xué)校使用計(jì)算機(jī)管理圖書的意義現(xiàn)在我國的很多學(xué)校圖書館中圖書的管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,在信息時(shí)代這種傳統(tǒng)的管理方法必然被計(jì)算機(jī)為基礎(chǔ)的信息管理所取代。我作為一個(gè)計(jì)算機(jī)及應(yīng)用專業(yè)的學(xué)生,希望可以在這方面有所貢獻(xiàn)。改革的總設(shè)計(jì)師鄧小平同志曾經(jīng)說過:“科學(xué)技術(shù)是第一生產(chǎn)力”,圖書館信息管理。 歸納起來好處大約有以下幾點(diǎn):(1) 可以存儲所

7、有的圖書檔案,安全、高效;(2) 只需一到二名圖書錄入員即可操作系統(tǒng),節(jié)省大量人力;(3) 可以迅速查到所需信息。1.3 圖書館信息管理系統(tǒng)的設(shè)計(jì)分析根據(jù)實(shí)際情況,我們使用原型法(Rapid Prototyping)即以少量代價(jià)快速地構(gòu)造一個(gè)可執(zhí)行的軟件系統(tǒng)模型。使用戶和開發(fā)人員可以較快地確定需求,然后采用循環(huán)進(jìn)化的開發(fā)方式,對系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具備的性質(zhì)逐漸增加上去,直到所有的性質(zhì)全部滿足。此時(shí)模塊也發(fā)展成為最終產(chǎn)品了。  第二章 怎樣開發(fā)一個(gè)圖書館信息管理系統(tǒng) 2.1 編程環(huán)境的選擇Microsoft公司的Visual Foxpro6.0是Wind

8、ows應(yīng)用程序開發(fā)工具,是目前最為廣泛的、易學(xué)易用的面向?qū)ο蟮拈_發(fā)工具。Visual Foxpro6.0提供了大量的控件,這些控件可用于設(shè)計(jì)界面和實(shí)現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設(shè)計(jì)過程,從而有效的提高了應(yīng)用程序的運(yùn)行效率和可靠性。另外,VF 還具有:用戶通過各種動作控制應(yīng)用程序的流程, 簡單的Visual Foxpro語言與豐富而功能強(qiáng)大的內(nèi)置函數(shù),面向?qū)ο蟮木幊?,跨平臺開發(fā), 與數(shù)據(jù)庫的連接性等一系列的優(yōu)點(diǎn),因此,實(shí)現(xiàn)本系統(tǒng),VF是一個(gè)相對較好的選擇。 2.2 關(guān)系型數(shù)據(jù)庫的實(shí)現(xiàn)Visual Foxpro6.0本身就是一種關(guān)系數(shù)據(jù)庫,它體積雖小但功能強(qiáng)大,支持多

9、種平臺,幾乎擁有其它大型關(guān)系型數(shù)據(jù)庫的所有功能,如觸發(fā)器、存儲過程等。由于Visual Foxpro6.0本身已經(jīng)是一個(gè)完整的數(shù)據(jù)庫系統(tǒng),所以在項(xiàng)目的開發(fā)階段,單機(jī)即可開發(fā)大型數(shù)據(jù)庫應(yīng)用。開發(fā)完成后,幾乎不用更改,把開發(fā)出的應(yīng)用系統(tǒng)升遷到網(wǎng)絡(luò)中即可運(yùn)行在其它數(shù)據(jù)庫上。VF可以通過標(biāo)準(zhǔn)的SQL語句及自身的語言來訪問數(shù)據(jù)庫,從而實(shí)現(xiàn)數(shù)據(jù)檢索。第三章 Windows環(huán)境下的Visual FoxPro簡介 3.1 Visual Foxpro簡介Microsoft Visual FoxPro 6.0是創(chuàng)建高性能、優(yōu)秀數(shù)據(jù)庫組件和解決方案的優(yōu)秀工具。Visual FoxPro 6.0 提供給開發(fā)

10、人員必要的工具管理數(shù)據(jù)-組織信息表格、運(yùn)行查詢、創(chuàng)建關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(DBMS)、為終端用戶設(shè)計(jì)數(shù)據(jù)管理應(yīng)用程序。 · 創(chuàng)建高性能的可重用組件。Visual FoxPro 6.0 是一種優(yōu)秀的組件創(chuàng)建工具,創(chuàng)建出的組件可以在客戶機(jī)/服務(wù)器、Internet、intranet環(huán)境中使用。這些組件是典型的控制服務(wù)器和處理本地異地?cái)?shù)據(jù)的其他組件的中間級事務(wù), · 方便學(xué)習(xí)使用。Visual FoxPro 6.0 較從前版本更容易學(xué)習(xí)和使用,它提供了更多的內(nèi)置功能和在應(yīng)用程序中使用的可重用組件,使那些使用Microsoft FoxPro? 2.x的開發(fā)人員很容易掌握新版本。 &

11、#183; 更好的開發(fā)環(huán)境。Visual FoxPro 6.0 有一套更好的開發(fā)環(huán)境。改進(jìn)的開發(fā)環(huán)境和開發(fā)工具使開發(fā)人員可以更充分地發(fā)揮他們的能力去進(jìn)一步改進(jìn)環(huán)境。 · 企業(yè)應(yīng)用程序開發(fā)。Visual FoxPro 6.0 支持Windows DNA 框架,將它作為Visual Studio 的一個(gè)成員。使用Visual FoxPro的開發(fā)人員可以創(chuàng)建基于組件的應(yīng)用程序,可以使用Visual Studio 企業(yè)版提供的工具創(chuàng)建企業(yè)應(yīng)用程序。 · 創(chuàng)建可以被其他人使用和重用的組件。Windows DNA應(yīng)用程序是多級的、基于組件的系統(tǒng),每級都提供一項(xiàng)服務(wù)。開發(fā)人員可以使用CO

12、M向中間級服務(wù)器寫數(shù)據(jù),中間級服務(wù)器鏈接前臺數(shù)據(jù)與后臺數(shù)據(jù),并且提供諸如數(shù)據(jù)檢索、數(shù)據(jù)操作、合法性檢測這樣的事務(wù)服務(wù)。因?yàn)镃OM是與語言無關(guān)的,開發(fā)人員可以使用他們熟悉的語言和工具創(chuàng)建組件。他們可以重用現(xiàn)有代碼,實(shí)現(xiàn)向上相容,以保護(hù)他們的投資。 · 面向?qū)ο髴?yīng)用程序框架。面向?qū)ο髴?yīng)用程序框架由提供用于任何應(yīng)用程序核心服務(wù)的類組成。因?yàn)殚_發(fā)人員不需要在每次創(chuàng)建新應(yīng)用程序時(shí)都重寫那些代碼,他們可以把精力集中在特定應(yīng)用程序代碼上。開發(fā)和維護(hù)都更簡單了,因?yàn)槊總€(gè)使用框架創(chuàng)建的應(yīng)用程序具有相似的結(jié)構(gòu)和行為。 · 創(chuàng)建基于面向?qū)ο罂蚣軕?yīng)用程序的簡單方法。面向?qū)ο髴?yīng)用程序應(yīng)該使用一種簡單

13、的方法"掛接"諸如表格、報(bào)表這樣的組件到應(yīng)用程序,而不要求對面向?qū)ο蟪绦蛟O(shè)計(jì)、應(yīng)用程序框架內(nèi)部結(jié)構(gòu)的詳細(xì)知識。 · 新改進(jìn)的向?qū)?。向?qū)ё詣油瓿梢话闳蝿?wù)和復(fù)雜任務(wù),節(jié)約了開發(fā)人員的時(shí)間和精力。向?qū)ι赡切╅_發(fā)人員不熟悉的新東西特別有幫助,比如在Web上公布數(shù)據(jù)。 · 2000年問題的解決。Visual FoxPro 6.0中的安全衛(wèi)士幫助開發(fā)人員在應(yīng)用程序中解決了2000年問題。 · 現(xiàn)有應(yīng)用程序向Web的簡單移植。創(chuàng)建Visual FoxPro 表格或完整應(yīng)用程序,將它們作為活動文檔,可以在Microsoft Internet Explore

14、r下看到,這種能力提供了一種簡單的移植現(xiàn)有應(yīng)用程序到Web、在瀏覽器中實(shí)現(xiàn)Visual FoxPro功能的方法。 · 應(yīng)用程序中更多的控制。使用Visual FoxPro 6.0的開發(fā)人員可以為類定義的屬性添加合法代碼,更多地控制用戶行為。 設(shè)計(jì)時(shí)間環(huán)境中更多的控制。開發(fā)人員不再需要為擴(kuò)展Project Manager功能,手工存取和修改工程文件。· 支持全程數(shù)據(jù)存取。Visual FoxPro 6.0 開發(fā)人員可以使用ODBC和OLE DB 從企業(yè)的多個(gè)數(shù)據(jù)源去查詢和操作數(shù)據(jù)。另外,可以在大量其它工具中使用Visual FoxPro 數(shù)據(jù)。 · 設(shè)計(jì)類和組件的更

15、好工具。利用Visual FoxPro中的工具,開發(fā)人員可以快速地創(chuàng)建由可重用組件組成的分布式應(yīng)用程序。當(dāng)應(yīng)用程序中的組件數(shù)目增加時(shí),復(fù)雜度也隨之增加。因此創(chuàng)建基于組件的、規(guī)模不一的企業(yè)和Internet應(yīng)用程序需要進(jìn)行建模。 · 可視化數(shù)據(jù)庫工具??蛻魴C(jī)/服務(wù)器開發(fā)中,此開發(fā)工具具有查詢、設(shè)計(jì)、改變計(jì)劃、存儲調(diào)試的功能。使用Visual FoxPro 的開發(fā)人員可以使用可視化數(shù)據(jù)庫工具與SQL Server 、Oracle相聯(lián)系。    第四章 使用Visual FoxPro實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫4.1 數(shù)據(jù)庫的概念 數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進(jìn)

16、行操作的工具。數(shù)據(jù)庫的作用在于組織和表達(dá)信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計(jì)算機(jī)的數(shù)據(jù)庫可以分為兩類:非關(guān)系數(shù)據(jù)庫(flat-file)和關(guān)系數(shù)據(jù)庫(relational)。關(guān)系數(shù)據(jù)庫中包含了多個(gè)數(shù)據(jù)表的信息,數(shù)據(jù)庫含有各個(gè)不同部分的術(shù)語,象記錄、域等。 4.2 新建一個(gè)數(shù)據(jù)庫創(chuàng)建任何一個(gè)數(shù)據(jù)庫的第一步是仔細(xì)的規(guī)劃數(shù)據(jù)庫,設(shè)計(jì)必須是靈活的、有邏輯的。創(chuàng)建一個(gè)數(shù)據(jù)庫結(jié)構(gòu)的過程被認(rèn)為是數(shù)據(jù)模型設(shè)計(jì)。(1) 標(biāo)識需要的數(shù)據(jù);(2) 收集被標(biāo)識的字段到表中;(3) 標(biāo)識主關(guān)鍵字字段;(4) 繪制一個(gè)簡單的數(shù)據(jù)圖表;(5) 規(guī)范數(shù)據(jù);(6) 標(biāo)識指定字段的信息;(7) 創(chuàng)建物理表。4.3創(chuàng)建數(shù)據(jù)庫參

17、照VF自帶的數(shù)據(jù)庫,可以很方便地創(chuàng)建了本系統(tǒng)將要使用的本地?cái)?shù)據(jù)庫。表說明如下:Book_recno.dbf      借書登記表Book_table.dbf        圖書資料表B_table.dbf           讀者類別查詢中間表    Group_table.dbf     

18、0; 圖書類別查詢中間表Pass_word.dbf 管理員ID密碼表User_table.dbf        讀者資料表 表結(jié)構(gòu)介紹: Book_recno.dbf      借書登記表字段名稱字段類型字段說明TSBHC(10)圖書編號TXMC(10)條形碼SMC(20)書名BHC(10)編號XMC(10)姓名JSBZC(4)借書標(biāo)志JSSJD(8)借書日期  Book_table.dbf    

19、;    圖書資料表字段名稱字段類型字段說明TSBHC(10)圖書編號TXMC(10)條形碼SMC(20)書名ZZC(20)作者CBSC(40)出版社CBSJD(8)出版時(shí)間LBC(20)類別XCSLN(3)現(xiàn)存數(shù)量TSZSN(3)圖書總數(shù)RGSJD(8)入館時(shí)間TSJGN(8,2)價(jià)格ZCCSN(5)借出次數(shù)JSQXN(2)借書時(shí)限 B_table.dbf           讀者類別查詢中間表    字段名稱字段類型字段說

20、明CHINA_LBC(10)中間字段LBC(15)中間字段 Group_table.dbf       圖書類別查詢中間表字段名稱字段類型字段說明CHINA_LBC(10)中間字段LBC(15)中間字段 Pass_word.dbf 管理員ID密碼表字段名稱字段類型字段說明GLY_IDC(10)管理員IDMMC(10)管理員密碼GLY_NAMEC(10)管理員姓名   User_table.dbf        讀者資

21、料表字段名稱字段類型字段說明BHC(10)編號XMC(10)姓名XBC(2)性別DWBMC(20)單位部門ZZC(40)住址YJSSN(4)已借已數(shù)BZC(20)備注LBC(10)職業(yè)DJRQD(8)登記日期JSRQD(8)借書日期HSRQD(8)還書日期   第五章 系統(tǒng)的總體規(guī)劃 5.1 系統(tǒng)功能5.1.1 系統(tǒng)的功能描述      圖書館信息管理軟件是隨著計(jì)算機(jī)產(chǎn)業(yè)的高速發(fā)展和計(jì)算機(jī)在各個(gè)領(lǐng)域普及,針對圖書館信息管理的普遍性和特殊性而提出的一套全面的、系統(tǒng)的現(xiàn)代化管理方法。使用戶從繁忙、復(fù)雜的手工記

22、錄工作程序中解脫出來,并可以從多方面掌握圖書館信息管理的詳細(xì)情況,為用戶提供準(zhǔn)確的、可靠的數(shù)據(jù)。     5.1.2 圖書館信息管理系統(tǒng)功能的定位         針對圖書館的日常工作,校園圖書館信息管理系統(tǒng)在完成從圖書的采購到入庫,外借到收回.其中包括了,逾期滯納金的收取,丟失圖書的處理等等各個(gè)方面的工作.能夠在校園圖書館信息管理中實(shí)現(xiàn)快捷、方便等特點(diǎn)。作為校園管理的一部分。校園圖書館信息管理系統(tǒng)提供了與學(xué)校其他管理系統(tǒng)的接口。5.1.3 圖書館信息管理系統(tǒng)的開發(fā)目標(biāo)

23、60;校園圖書館信息管理系統(tǒng)的開發(fā)目標(biāo):為圖書館管理提供可靠的、先進(jìn)的、適應(yīng)性強(qiáng)的應(yīng)用系統(tǒng)。從多方面為學(xué)生以及教職工提供及時(shí)、準(zhǔn)確的借書服務(wù)。校園圖書館信息管理系統(tǒng)應(yīng)使用統(tǒng)一標(biāo)準(zhǔn)化的數(shù)據(jù)字典、統(tǒng)一數(shù)據(jù)標(biāo)識編碼;必須具有:統(tǒng)一的與其它系統(tǒng)和接口,包括:統(tǒng)一的協(xié)議棧、統(tǒng)一的數(shù)據(jù)格式。5.1.4圖書館信息管理系統(tǒng)的邊界定義 校園圖書館信息管理系統(tǒng)的邊界定義從兩個(gè)方面來描述:1)系統(tǒng)處理的業(yè)務(wù)種類;2)系統(tǒng)包括的處理功能?;诖藘深悇澏?,可決定校園圖書館信息管理系統(tǒng)與其它業(yè)務(wù)處理/管理系統(tǒng)的接口。  第六章 系統(tǒng)的具體實(shí)現(xiàn)6.1 系統(tǒng)的開發(fā)平臺   &

24、#160;開發(fā)平臺:        操作系統(tǒng): Microsoft Windows XP         開發(fā)工具: Microsoft Visual Foxpro 6.0         6.2 用戶界面的設(shè)計(jì)程序菜單功能介紹:借書-根據(jù)您提供的圖書條形碼和圖書編號確認(rèn)圖書,再根據(jù)讀者的編號確認(rèn)讀者后把此書借給這位讀者。還書-根據(jù)您提供的圖書條形碼和圖書編號確認(rèn)圖書,再根據(jù)讀

25、者的編號確認(rèn)讀者后把此書歸還。圖書館信息管理-對所有圖書的資料進(jìn)行添加,修改和刪除等操作。讀者管理-對所有讀者的資料進(jìn)行添加,修改和刪除等操作。查詢-所有圖書、不在館圖書,今天借出圖書、今日歸還圖書、今日新進(jìn)圖書和有條件查詢。統(tǒng)計(jì)-圖書基礎(chǔ)狀況統(tǒng)計(jì)排名。管理員-在這里修改管理員的登錄密碼。系統(tǒng)程序構(gòu)成:系統(tǒng)構(gòu)成圖表如下圖:項(xiàng)目的各部分完成系統(tǒng)的不同任務(wù),但從總體上講,可分成兩個(gè)方面分析,一個(gè)是數(shù)據(jù)源,為程序處理提供原始數(shù)據(jù);一個(gè)是程序模塊,是數(shù)據(jù)處理的方法和平臺。把這兩者有機(jī)的結(jié)合起來,就是一個(gè)完整的程序應(yīng)用系統(tǒng)。 程序運(yùn)行界面見下圖: 說明:系統(tǒng)登錄界面,只有輸入正確的I

26、D和密碼才能進(jìn)行圖書館信息管理系統(tǒng)。 說明:圖書館信息管理系統(tǒng)主界面。 說明:借書子程序操作界面。 說明:還書子程序操作界面。 說明:圖書館信息管理操作界面。提供圖書新增、修改、刪除等功能。 說明:讀者管理操作界面。提供讀者新增、修改、刪除等功能。說明:打印模塊具有打印圖書信息的功能說明:管理員密碼維護(hù)操作界面。第七章 結(jié)束語圖書館信息管理系統(tǒng)其功能基本符合用戶需求。我認(rèn)為在這次設(shè)計(jì)的過程中,通過將所的理論知識與實(shí)際情況相結(jié)合,獨(dú)立思考,全面分析,靈活運(yùn)用所學(xué)知識,解決具體問題,將有力地促進(jìn)理論水平的進(jìn)一步提高。同時(shí),對心理素質(zhì)的鍛煉和工作作風(fēng)

27、的培養(yǎng)。但是系統(tǒng)還有許多不盡如人意的地方,比如:聯(lián)機(jī)文檔比較少,用戶界面不夠美觀,出錯(cuò)處理機(jī)制不夠等一些問題,這些都有待進(jìn)一步的改善。  參考文獻(xiàn):1書名:Visual FoxPro 7.0高級編程 作者:孫立明劉琳等書號:7-302-05540-8 出版社:清華大學(xué)出版社 出版日期:2002-6-12書名:Visual FoxPro 6.0程序設(shè)計(jì)與應(yīng)用 作者:章立民 書號:7-113-04993-1 出版社:中國鐵道出版社出版日期:2003-1-13網(wǎng)站: 網(wǎng)站: 附:程序清單程序功能介紹:*-主控程序: main_tsgl.prgclear all 從內(nèi)存中釋放所有的

28、內(nèi)存變量和數(shù)組以及所有用戶自定義菜單欄、菜單和窗口的定義。_screen.visible=.f.主窗口VFP不可見set escape off 禁止運(yùn)行的程序和命令在按 Esc 鍵后被中斷。set talk off           阻止對話結(jié)果傳送到 Visual FoxPro 主窗口、系統(tǒng)信息窗口set excl off   (私有數(shù)據(jù)工作期的默認(rèn)方式)允許網(wǎng)絡(luò)上的任何用戶共享和修改網(wǎng)絡(luò)上打開的表set safety off    

29、;     指定在改寫已有文件時(shí)不顯示對話框。set dele on    使用范圍子句處理記錄(包括在相關(guān)表中的記錄)的命令忽略標(biāo)有刪除標(biāo)記的記錄set century on  指定在包含 10 個(gè)字符(包括日期分隔符)的日期格式中,用四位數(shù)字表示年。set date to YMD        決定日期在日期時(shí)間表達(dá)式中的格式: yy/mm/dd public M_js,M_hs,mypath,tsgl,demo3 

30、60; 定義變量、數(shù)組為公共變量 M_js= .T.為變量賦值M_hs= .T.mypath=left(sys(16),rat("",sys(16)把當(dāng)前路徑賦給一個(gè)變量set defa to &mypath指定默認(rèn)的驅(qū)動器、目錄或文件夾 *-dimension demo3創(chuàng)建一維內(nèi)存變量數(shù)組     store '.F.' to demo1為數(shù)組賦值     store '.F.' to demo2   

31、  store '.F.' to demo3*-傳遞ID、密碼變量- sele 1                   激活指定工作區(qū)1 ,以下類似 use book_table          打開一個(gè)表,以下類似sele 2 use group_tablesele 3

32、 use b_tablesele 4   use user_table do form login_form    運(yùn)行表單  read events          當(dāng)發(fā)出 READ EVENTS 命令時(shí),Visual FoxPro 啟動事件處理 說明:   設(shè)置程序運(yùn)行的環(huán)境參數(shù)、變量等。  *- 密碼驗(yàn)證表單: Login_form.scx  *-

33、控件: command1  *- click事件代碼如下: select gly_id,mm,gly_name from pass_word ;where gly_id=allt(thisform.text1.value) and ;mm=allt(thisform.text2.value)  into array demo                    &#

34、160;  if demo1='.F.'   = messagebox('登錄ID或密碼錯(cuò)誤!',0+16+0,'提示')   信息提示窗口  thisform.text1.setfocus     控件text1獲得了焦點(diǎn) * return .T.else     thisform.release從內(nèi)存中釋放表單集或表單 do login_app運(yùn)行程序endif  代碼說明:SQL語句從密碼表“

35、Pass_word.dbf中選出gly_id,mm,gly_name三個(gè)字段的記錄與所輸入的數(shù)據(jù)進(jìn)行比較,如果相等。則把它們賦值到一個(gè)數(shù)組中,然后執(zhí)行下一步程序。否則數(shù)組為最初所賦的值“.F.”,程序返回到數(shù)據(jù)輸入狀態(tài),直到正確輸入或者退出。      *- 控件: command2  *- click事件代碼如下: thisform.releaseclear events             發(fā)出 CLEAR

36、EVENTS 命令停止事件處理 代碼說明:釋放當(dāng)前表單,清除當(dāng)前事件。*-聯(lián)接程序: main_tsgl.prg DO FORM tsgl.scx name tsgl &&窗口句柄傳遞DO Menu_tsgl.mpr WITH tsgl,.t.,.t.     運(yùn)行菜單 代碼說明:運(yùn)行圖書館信息管理主表單以后,再運(yùn)行菜單組件。  *-圖書館信息管理主表單:Tsgl.scx    主要屬性:     AlwaysOnTop = .F

37、.    其他窗口可以覆蓋住表單窗口。     AutoCenter  = .T.指定表單對象第一次顯示于 Visual FoxPro 主窗口時(shí),自動居中放置     ShowWindows = 2    作為頂層表單     Caption = 岳陽電信-圖書館信息管理系統(tǒng)  V1.0   表單標(biāo)題 屬性說明:當(dāng)前表單優(yōu)先居前,自動居中,為頂層表單,表單標(biāo)題為“岳陽

38、電信-圖書館信息管理系統(tǒng)  V1.0”。    *- Init 事件代碼如下: bo1.listindex=1   表單上的頁中的組合框的屬性bo1.listindex=1 代碼說明:控件“Combol”的數(shù)據(jù)源是“Group_Table.dbf”,Listindex1,則當(dāng)前控件“Combol”中所顯示的數(shù)據(jù)為“圖書編號”。   *- Resize 事件代碼如下:   mandgroup1.width = this.width-5thisform.pageframe1.wi

39、dth = this.width-5thisform.pageframe1.height = this.height-100thisform.pageframe1.page1.grid1.width = thisform.pageframe1.width -22thisform.pageframe1.page1.grid1.height =; thisform.pageframe1.height -82 thisform.pageframe1.page2.grid1.width = ;thisform.pageframe1.width -22thisform.pagefra

40、me1.page2.grid1.height = ;thisform.pageframe1.height -82 thisform.pageframe1.refresh 代碼說明:頁框“page1”和“page2”、表格控件“grid1”隨當(dāng)前表單大小的變化而變化。    *- QueryUnload 事件代碼如下: thisform.release從內(nèi)存中刪除內(nèi)存變量和數(shù)組。clear events  *-借書子程序:Jies.scx    *- 控件: command1  

41、0; *- click事件代碼如下:  sele 1if thisform.optiongroup1.option1.value=0  當(dāng)前單選框的值為0  locate for txm=upper(allt(thisform.text2.value)  從表中查找輸入的條形碼     if not found()          =messagebox('沒有該圖書的條形碼!',0+64+0,'提示'

42、)      go top   指針定位到表頭     else      mand3.enabled=.T.     指定對象可以響應(yīng)用戶引發(fā)的事件     endif endif   if thisform.optiongroup1.option1.value=1 當(dāng)前單選框的值為1  locate for tsb

43、h=upper(allt(thisform.text1.value)   if not found()      =messagebox('沒有該圖書編號!',0+64+0,'提示')      go top    else     mand3.enabled=.T.   endif  endif    &

44、#160;   thisform.refresh 代碼說明:根據(jù)圖書的條形碼或圖書編號查詢所借書目。只有所借書目存在,才能對讀者信息進(jìn)行操作。   *- 控件: command2    *- click事件代碼如下:   thisform.text2.value=' '賦文本框text2的值為空 thisform.text1.value=' ' thisform.text1.setfocus   *- 控件: command3

45、0;   *- click事件代碼如下:  sele 4  locate for bh=upper(allt(thisform.text12.value)      if not found()      =messagebox('沒有該讀者的編號!',0+64+0,'提示')      go top     endifmand5.enabled=.T.t

46、hisform.refresh 代碼說明:對借書讀者的資料進(jìn)行確認(rèn)。   *- 控件: command5    *- click事件代碼如下: nAnswer = MESSAGEBOX('確認(rèn)所借書目的資料無誤嗎?',4+32+0,'重要提示') DO CASE   CASE nAnswer = 6       sele 1          

47、If xcsl=0       =messagebox('該圖書已經(jīng)沒有庫存!',0+64+0,'提示')         return .T.     Else          replace xcsl with xcsl-1 ,zccs with zccs+1    現(xiàn)存數(shù)量減1,借出數(shù)量加1 

48、60;          insert into book_recno (tsbh,txm,sm,bh,xm,jssj,jsbz) ;         values( upper(allt(thisform.text7.value), ;                 upper(allt(thi

49、sform.text4.value), ;                 upper(allt(thisform.text3.value), ;                 upper(allt(thisform.text13.value),;    &

50、#160;            upper(allt(thisform.text14.value),;     datetime(),'借出' )    把當(dāng)前資料插入到表book_recno中       sele 4     replace yjss with yjss+1   

51、;  讀者資料表中的已借書數(shù)加1                             Endif                    

52、        CASE nAnswer = 7   ENDCASE 代碼說明:在確認(rèn)所輸入的圖書和讀者資料無誤后,程序開始對圖書資料表、讀者資料表、借書記錄表這三個(gè)表進(jìn)行修改和錄入。MESSAGEBOX( ) 對應(yīng)每個(gè)按鈕的返回值。 返回值  按鈕1        確定2        取消3       

53、 放棄4        重試5       忽略6       是7        否*-還書子程序:Jies.scx    *- 控件: command1    *- click事件代碼如下: sele 1if thisform.optiongroup1.option1.value=0   

54、60;     locate for txm=upper(allt(thisform.text2.value)      if not found()      =messagebox('沒有該圖書的條形碼!',0+64+0,'提示')      go top     endif endif   if thisform.opt

55、iongroup1.option1.value=1   locate for tsbh=upper(allt(thisform.text1.value)   if not found()      =messagebox('沒有該圖書編號!',0+64+0,'提示')      go top   endif endif        m

56、and3.enabled=.T. thisform.refresh *- 控件: command3    *- click事件代碼如下:   thisform.text13.visible= .T.   顯示當(dāng)前文本框text13sele 4   locate for bh=upper(allt(thisform.text12.value)      if not found()      

57、60; =messagebox('輸入的讀者編號有錯(cuò)吧?',0+32+0,'提示')        go top        else            thisform.refresh       mand5.enabled=.T.   &

58、#160; endif  *- 控件: command5    *- click事件代碼如下:sele 1  replace xcsl with xcsl+1      現(xiàn)存數(shù)量加1    insert into book_recno (tsbh,txm,sm,bh,xm,jssj,jsbz) ;         values( upper(allt(thisform.text7.value),

59、;                 upper(allt(thisform.text4.value), ;                 upper(allt(thisform.text3.value), ;        &#

60、160;        upper(allt(thisform.text12.value),;                 upper(allt(thisform.text13.value),;                

61、 datetime(),'還回' )  thisform.refresh                    =messagebox('操作完成,該書已經(jīng)歸檔!',0+64+0,'完成')   mand5.enabled=.F.   代碼說明:還書程序代碼和借書程序代碼比較相似,請看借書程序代碼說明。 *- 控件: c

62、ommand7    *- click事件代碼如下: M_hs= .T.thisform.release  *-圖書館信息管理子程序:Tsgl_tsgl.scx    *- 控件: command1    *- click事件代碼如下: sele 1 if thisform.optiongroup1.option1.value=0         locate for txm=upper(allt(thisform.

63、text2.value)      if not found()      =messagebox('沒有該圖書的條形碼!',0+64+0,'提示')      go top     endif endif   if thisform.optiongroup1.option1.value=1   locate for tsbh=upper(allt(thisform.text1.value)   if not found()      =messagebox('沒有該圖書編號!',0+64+0,'提示')      go top   endif endif        thisform.refresh 代碼說明:根據(jù)圖書的條形碼或圖書編號查詢圖書。并且可以

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論