圖書館管理系統(tǒng) 哈工大畢業(yè)論文_第1頁
圖書館管理系統(tǒng) 哈工大畢業(yè)論文_第2頁
圖書館管理系統(tǒng) 哈工大畢業(yè)論文_第3頁
圖書館管理系統(tǒng) 哈工大畢業(yè)論文_第4頁
圖書館管理系統(tǒng) 哈工大畢業(yè)論文_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

哈爾濱工業(yè)大學(xué)成人高等教育畢業(yè)設(shè)計(論文)-PAGEI-摘要信息系統(tǒng)的發(fā)展及其廣泛的應(yīng)用,數(shù)據(jù)庫技術(shù)已經(jīng)日趨成熟。其應(yīng)用遍及了社會生活的各個領(lǐng)域。本文介紹了數(shù)據(jù)庫理論的一些基本知識,并詳細地介紹了圖書館管理系統(tǒng)的設(shè)計與實現(xiàn)過程。在整個系統(tǒng)的設(shè)計過程中,本文嚴格按照數(shù)據(jù)庫系統(tǒng)設(shè)計步驟,結(jié)合軟件工程的思想,采用了工程化的開發(fā)方法,逐步完成了設(shè)計階段的任務(wù)。在需求分析階段,經(jīng)過與用戶深入細致的交流,得出了需求任務(wù)書,并以此形成了數(shù)據(jù)流圖。在概念設(shè)計階段,通過對數(shù)據(jù)流圖的細致分析,得出了每個局部視圖的擴展實體聯(lián)系圖,然后采用視圖綜合設(shè)計方法形成了全局概念模式并用擴展實體聯(lián)系圖將其完整的表示了出來。在邏輯設(shè)計階段,通過對全局概念模式的擴展實體聯(lián)系圖的轉(zhuǎn)換,形成了初始關(guān)系數(shù)據(jù)庫模式,然后,經(jīng)過關(guān)系模式的規(guī)范化和優(yōu)化得出了最終的關(guān)系模式,并達到了較高的規(guī)范化程度。在系統(tǒng)的實現(xiàn)階段,本文采用了現(xiàn)階段最為流行的數(shù)據(jù)庫語言SQL并羅列出了比較詳細的實現(xiàn)步驟,用戶可據(jù)此了解怎樣完成要完成的工作。經(jīng)過長時間的實驗,證明了本系統(tǒng)在數(shù)據(jù)庫管理,數(shù)據(jù)修改和數(shù)據(jù)庫功能維護等方面的性能是靈活優(yōu)越的,本系統(tǒng)的特色在于功能全面易學(xué)好用。關(guān)鍵詞:圖書館管理系統(tǒng),關(guān)系數(shù)據(jù)庫,信息處理AbstractWiththedevelopmentofManagementInformationSystemanditswidelyapplications,theDatabaseManagementtechnologyisgraduallymatureandpopularineveryfield.ThisarticleintroducedsomeprimaryknowledgeofdatabaseanddwelledontheprocessofthedesignandtheimplementationoftheLibraryManagementSystem.Inthewholeprocessofthesystemdesigning,Thisarticlecompletedthetaskofthedesigningstagestepbystep,obeyingtheorderofthedatabasesystemdesigning,combiningtheideaoftheSoftwareEngineering,bythewayofProjectDesigning.InthestageofRequiringAnalysis,RequiringBookandDataFlowChartweremadeoutbyabundantdiscussingwithuser.InthestageofConceptionDesigning,theEERChartofeverypartweremadeoutbycarefulanalysistoDataFlowChart,andthenthefinalEERChartofthewholeconceptmodewasmadeoutbythewayofViewIntegrationDesign.InthestageofLogicalDesigning,theInitialRDBModewasmadeoutbytransformingthefinalEERChart.thenthefinalRelationshipModewasmadeoutbyRelationshipModeStandardizationandoptimize.InthestageofSystemRealization,themorepopularandmoreadvanceddatabaselanguageSQLwasusedandthedetailedexploitationprocesswaslisted.theusercanfinishtheworkeasilyaccordingtoit.Thesystemhasbeenexperimentedforalongtime.Itisprovedtobeflexibleintheaspectsofdatamanagement,datamodificationandfunctionsafeguards.Ithasmanyadvantagestotheusers.Thedesignofuserinterfacemakesiteasyforusertoacceptit.KeywordslibrarymanagementsystemrelationshipdatabaseInformationprocess目錄摘要……………ⅠAbstract………………………Ⅱ第1章緒論……………………11.1課題背景……………11.2課題的目的和意義…………………11.2.1課題的目的…………………11.2.2課題的意義…………………21.3任務(wù)的提出…………21.4系統(tǒng)要實現(xiàn)的目標(biāo)…………………31.5本系統(tǒng)的特點………31.6環(huán)境基礎(chǔ)……………41.6.1硬件環(huán)境……………………41.6.2軟件環(huán)境……………………4第2章相關(guān)理論及開發(fā)工具介紹……………52.1軟件工程概述………52.2數(shù)據(jù)庫技術(shù)概述……………………52.3數(shù)據(jù)庫技術(shù)的發(fā)展…………………62.4數(shù)據(jù)模型和關(guān)系數(shù)據(jù)庫……………62.5MicrosoftAccess2000的主要特點…………………72.6關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言——SQL…………………72.7VisualBasic6.0(中文版)主要特點………………8第3章系統(tǒng)設(shè)計……………103.1需求分析……………113.1.1目前圖書管理工作狀況……113.1.2系統(tǒng)設(shè)計功能分析…………113.1.3系統(tǒng)性要求…………………123.2系統(tǒng)總體設(shè)計………133.2.1系統(tǒng)總體設(shè)計………………133.2.2數(shù)據(jù)庫設(shè)計…………………143.2.3E-R圖及其實體間關(guān)系描敘……………17第4章系統(tǒng)詳細設(shè)計及實現(xiàn)………………184.1模塊劃分及流程……………………184.1.1系統(tǒng)維護模塊………………184.1.2借書還書模塊………………204.1.3查詢模塊……………………214.1.4幫助系統(tǒng)……………………224.1.5系統(tǒng)管理……………………224.2系統(tǒng)的實現(xiàn)…………234.2.1主界面的實現(xiàn)………………234.2.2系統(tǒng)維護模塊的創(chuàng)建………254.2.3借書還書模塊的創(chuàng)建………264.2.4系統(tǒng)管理模塊的創(chuàng)建………284.2.5幫助系統(tǒng)創(chuàng)建………………28第5章系統(tǒng)的測試與運行…………………29結(jié)論……………30致謝……………31參考文獻………………………32工作簡歷………………………33附錄1…………34附錄2…………37哈爾濱工業(yè)大學(xué)成人高等教育畢業(yè)設(shè)計(論文)-PAGE43-第1章緒論1.1課題背景自從二十世紀四十年代第一臺電子計算機誕生以來至今已有五十多年的歷史了。在這五十年的過程中,計算機技術(shù)可以說是得到了迅猛的發(fā)展。在各個領(lǐng)域內(nèi)發(fā)揮了據(jù)大的作用。各種計算機軟件也曾出不窮。計算機應(yīng)用從科學(xué)計算進入數(shù)據(jù)處理是一個劃時代的轉(zhuǎn)折,使計算機從少數(shù)科學(xué)家手中的珍品成為廣大計算機用戶的得力助手和有力工具。進入二十世紀,計算機的應(yīng)用更是無處不在。不懂得計算機的使用被稱為現(xiàn)代的“文盲”,近年來,隨著計算機技術(shù),特別是internet網(wǎng)絡(luò)的高速發(fā)展,計算機應(yīng)用已經(jīng)深入到人類社會的各個行業(yè),各個領(lǐng)域,甚至千家萬戶。信息化社會,網(wǎng)絡(luò)時代已經(jīng)離我們不遠了。隨著校園內(nèi)辦公自動化的普及與應(yīng)用,校園教育改革的深入進行,大力提倡開拓與創(chuàng)新的同時,我校作為一個重點大學(xué),擁有領(lǐng)導(dǎo)時代潮流的一流學(xué)科,在辦公自動化,開拓與創(chuàng)新方面更應(yīng)該走在前列,成為代表著先進文化前進方向的先鋒。為了逐步實現(xiàn)這個目標(biāo),全校上下都在積極工作,努力創(chuàng)新,提高工作效率,作為學(xué)校的一個對外窗口,學(xué)工辦的工作更應(yīng)該有所創(chuàng)新,以高效的工作效率,認真的工作作風(fēng),務(wù)實的工作態(tài)度,來展現(xiàn)我們的新風(fēng)貌。最重要的是,我校圖書館藏數(shù)多,專職管理人員有限。面對這種情況,要想實現(xiàn)圖書借閱工作的順利進行,服務(wù)好學(xué)生正常的學(xué)習(xí)和豐富課外生活,使其健康成長,快速成才,其難度可想而知。而平日大量的瑣碎的圖書管理工作更是嚴重影響了管理人員的工作效率。鑒于此,開發(fā)一套功能全面,易于使用,而且簡單實用的管理軟件來解決這一實際問題就成了當(dāng)務(wù)之急。1.2課題的目的和意義1.2.1課題的目的為了減少平日大量的圖書管理工作對管理人員的工作時間的占用和精力的牽扯,提高他們的辦公效率,以抽出時間去處理更多其他的更緊急的工作任務(wù),逐步實現(xiàn)辦公自動化,我們著手開發(fā)了一套這樣的圖書管理系統(tǒng)應(yīng)用軟件。1.2.2課題的意義首先,由于市場上沒有現(xiàn)成的針對“圖書管理”的商品軟件,所以要想具有一套能幫助圖書館管理人員提高工作效率的圖書管理軟件就只能請人來幫助開發(fā),而這筆開發(fā)費用卻很多,因此,自主開發(fā)這樣一套圖書管理軟件解決了經(jīng)費問題。其次,從市場上買來的成品軟件或請人來幫助開發(fā)的軟件在很大程度上不能完全真正的滿足管理工作需要,因為只有常年工作在第一線的人員,才真正了解實際情況,才真正知道他們自己需要什么樣的軟件來幫助他們高效率的完成工作,所以,經(jīng)過采訪對工作比較熟悉的管理人員和自己在圖書館借閱的經(jīng)驗來開發(fā)這樣一套圖書管理軟件就很好的解決了軟件產(chǎn)品和需求之間存在差異的問題。第三,現(xiàn)代社會的發(fā)展速度之快是所有人所始料不及的。作為一所重點大學(xué),我校前進速度和建設(shè)規(guī)模更是如此,一切都以超常規(guī)的速度向前發(fā)展。這就決定了圖書管理工作也要隨時間經(jīng)常變更,也勢必決定了開發(fā)出來的圖書管理系統(tǒng)軟件要經(jīng)常增加一些功能,作一些修改。所以自主的開發(fā)這樣一套圖書管理系統(tǒng)軟件為今后的業(yè)務(wù)發(fā)展打下了良好的基礎(chǔ)。第四,隨著學(xué)校教育改革的進行,學(xué)校的各個部門,各個學(xué)院都在進行創(chuàng)新,都在想方設(shè)法的提高工作效率,這套圖書管理系統(tǒng)軟件的開發(fā)必將成為學(xué)校教育改革的一個經(jīng)典創(chuàng)新之舉,也為學(xué)校其他部門自主的開發(fā)軟件做出了一步粗淺的嘗試。1.3任務(wù)的提出本次設(shè)計的任務(wù)是為圖書館辦公室開發(fā)一套圖書管理系統(tǒng)。作為這樣的一套系統(tǒng),要在管理圖書的日常工作中發(fā)揮它輔助管理的作用,就必須具備簡便易操作,快捷準(zhǔn)確等特色。用以來提高辦公室的工作效率。基于以上的原因,本系統(tǒng)能夠完成以下任務(wù):現(xiàn)全方位細致的管理。區(qū)別于以往的人事管理系統(tǒng)或?qū)W籍管理系統(tǒng),對本系統(tǒng)圖書的館藏,借閱情況等進行了全面細致的管理,并對新書入庫和舊書注銷工作進行了全面的接觸。力求盡量濃縮圖書管理工作的各項內(nèi)容。能夠隨情況的變化,對數(shù)據(jù)進行更改,這就要求系統(tǒng)具有良好的增,刪,改功能。用簡單易操作。這就要求本系統(tǒng)有著較清晰的層次界面與良好的和友好的戶界面。盡量不要求用戶通過鍵盤輸入,使只具有一般的計算機水平的使用者也能夠輕松愉快的駕馭本系統(tǒng)。迅捷準(zhǔn)確的查詢系統(tǒng)。由于日常工作所涉及的情況千變?nèi)f化,而且為了使突發(fā)事件得到迅速圓滿的解決,就要求本系統(tǒng)具備以下特征:1.快速準(zhǔn)確的按各個屬性查詢2.清晰的顯示各項統(tǒng)計為各級用戶規(guī)定權(quán)限。對于不同身份的使用者,要規(guī)定不同的權(quán)限。使某些人只能瀏覽某些內(nèi)容,某些人可以對數(shù)據(jù)庫進行更新操作。1.4系統(tǒng)要實現(xiàn)的目標(biāo)1.從用戶的觀點看,要求系統(tǒng)能夠達到以下目標(biāo):(1)及時的收集和保存信息(2)快速準(zhǔn)確的傳遞信息(3)提供準(zhǔn)確的信息(4)實現(xiàn)數(shù)據(jù)共享2.設(shè)計人員從技術(shù)觀點看,要求系統(tǒng)能達到以下目標(biāo)(1)方便用戶使用(2)具有較高的可靠性(3)具有較高的運行效率(4)具有較強的可維護性和可擴充性。能夠適應(yīng)用戶新的業(yè)務(wù)要求的變化。1.5本系統(tǒng)的特點本系統(tǒng)借鑒了以往數(shù)據(jù)庫軟件的成功之處,從中吸取了許多寶貴的經(jīng)驗,并且進行了詳細的用戶需求分析,在以上基礎(chǔ)之上,對系統(tǒng)進行了細致的設(shè)計,綜合起來,我個人認為本系統(tǒng)的特點在于:(1)結(jié)合軟件工程理論,嚴格按照數(shù)據(jù)庫設(shè)計步驟,采用工程化開發(fā)方法。(2)盡量成為一個讓用戶真正滿意的,方便實用的而又好學(xué)易懂的應(yīng)用軟件。本系統(tǒng)是建立在深入的用戶需求分析與嚴密的系統(tǒng)功能設(shè)計之上的。(3)應(yīng)用本系統(tǒng)后,擺脫了以往人事管理軟件或?qū)W籍管理軟件內(nèi)容單一的不足。主要體現(xiàn)在本系統(tǒng)對圖書的管理是全方位的而不是單方面的,是動態(tài)的而不是靜態(tài)的,是快速準(zhǔn)確而且高效方便的。(4)采用VB6.0作為開發(fā)工具,減輕了編程人員的工作量。該系統(tǒng)界面友好,響應(yīng)迅速,容錯能力強。1.6環(huán)境基礎(chǔ)1.6.1硬件環(huán)境至少有32兆內(nèi)存(建議64兆)至少300MB的硬盤空間(建議盡量大些)CPU至少為586sx的一臺pc機一個CD-ROM驅(qū)動器及一個3寸軟驅(qū)一臺顯示器一個鼠標(biāo)一臺打印機1.6.2軟件環(huán)境已安裝Win95、Win98、Win2000操作系統(tǒng)。使用VisualBasic6.0中文版本。第2章相關(guān)理論及開發(fā)工具介紹2.1軟件工程概述軟件工程是指導(dǎo)計算機軟件開發(fā)和維護的工程科學(xué)。采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護軟件,把經(jīng)過時間考驗而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,這就是軟件工程。軟件工程的傳統(tǒng)途徑是生命周期方法學(xué)。就是從時間的角度對軟件開發(fā)和維護的復(fù)雜問題進行分解,把軟件生命的漫長周期依次劃分為:軟件定義:問題定義、可行性研究和需求分析。軟件開發(fā):總體設(shè)計,詳細設(shè)計,編碼和單元測試,綜合測試。軟件維護:主要任務(wù)是使軟件持久的滿足用戶的需求。具體地說,當(dāng)軟件在使用過程中發(fā)現(xiàn)錯誤時應(yīng)加以糾正,當(dāng)環(huán)境改變時應(yīng)修改軟件以適應(yīng)新的環(huán)境,當(dāng)用戶有新要求時應(yīng)及時改進軟件以滿足用戶的新需求。采用生命周期法可以大大提高軟件開發(fā)的成功率,軟件開發(fā)的生產(chǎn)率也能明顯提高。2.2數(shù)據(jù)庫技術(shù)概述所謂數(shù)據(jù)庫(DataBase),是存儲在一起的相關(guān)數(shù)據(jù)的集合。它能為各種用戶所共享,并具有最小冗余。數(shù)據(jù)間聯(lián)系密切。數(shù)據(jù)與程序之間有較高的獨立性。對數(shù)據(jù)庫進行管理的軟件系統(tǒng)稱為數(shù)據(jù)庫管理系統(tǒng)DBMS(DataBaseManagementSystem)。他為用戶或應(yīng)用程序提供了訪問數(shù)據(jù)庫的數(shù)據(jù)和對數(shù)據(jù)庫的安全性,完整性,保密性,并發(fā)性等統(tǒng)一控制的方法。數(shù)據(jù)庫是數(shù)據(jù)管理的新技術(shù),是計算機科學(xué)的重要分支。隨著科學(xué)技術(shù)的不斷發(fā)展,以電子計算機為基礎(chǔ)手段的現(xiàn)代信息處理技術(shù),正使人類社會的經(jīng)濟,科學(xué)技術(shù)和家庭生活發(fā)生著日新月異的變化。其發(fā)展技術(shù)和應(yīng)用水平,已成為人類進入信息社會,國家走向現(xiàn)代化的一個重要標(biāo)志。由于數(shù)據(jù)庫具有數(shù)據(jù)結(jié)構(gòu)化,最小冗余度,較高的程序獨立性與數(shù)據(jù)獨立性,易于擴充,易于編制應(yīng)用程序等優(yōu)點。較大的信息系統(tǒng)都是建立在數(shù)據(jù)庫的設(shè)計之上的。因此,不僅大型計算機,中小型計算機,甚至我們的微型機上也配備有數(shù)據(jù)庫系統(tǒng)。現(xiàn)代社會是信息的社會,大量的信息不可能完全依靠手工,必須依靠計算機技術(shù)。這同時也對數(shù)據(jù)庫管理技術(shù)提出了更高的要求。目前,對數(shù)據(jù)庫各種模型的研究以及理論上的討論都在蓬勃發(fā)展。其應(yīng)用也從一般管理擴充到計算機輔助設(shè)計,人工智能以至于科學(xué)計算等領(lǐng)域。數(shù)據(jù)庫技術(shù)所研究的問題就是如何科學(xué)的組織和存儲數(shù)據(jù),如何高效的獲取和處理數(shù)據(jù)。處理數(shù)據(jù)是指對各種形式的數(shù)據(jù)進行收集,存儲,加工和傳播的一系列活動的總和。其目的是從大量的,原始的數(shù)據(jù)中抽取,推導(dǎo)出對人們有價值的信息以作為人們行為和決策的依據(jù)。是為了借助計算機科學(xué)的保存和管理復(fù)雜的大量數(shù)據(jù)。以使人們能方便而充分的利用這些寶貴的信息資源。2.3數(shù)據(jù)庫技術(shù)的發(fā)展數(shù)據(jù)庫技術(shù)的萌芽從六十年代中期到六十年代末七十年代初。數(shù)據(jù)庫技術(shù)日益成熟,并有了堅實的理論基礎(chǔ)。七十年代,數(shù)據(jù)庫技術(shù)有了很大的發(fā)展。首先,數(shù)據(jù)庫方法,特別是DBTG(DataBaseTaskGroup)方法和思想應(yīng)用于各種計算機系統(tǒng),出現(xiàn)了許許多多的商品化數(shù)據(jù)庫系統(tǒng),他們大多是基于網(wǎng)狀和層次模型的。其次,這些商用系統(tǒng)的運行使數(shù)據(jù)庫技術(shù)日益廣泛的應(yīng)用到企業(yè)管理,交通運輸,情報檢索,軍事指揮,政府管理和輔助決策等各個方面,深入到人類生活的各個領(lǐng)域。數(shù)據(jù)庫技術(shù)成為實現(xiàn)和優(yōu)化信息系統(tǒng)的基礎(chǔ)技術(shù)。第三,關(guān)系方法的理論研究和軟件系統(tǒng)的研究取得了很大成果。到了80年代,幾乎所有的新開發(fā)的系統(tǒng)均是關(guān)系型的,微機的關(guān)系數(shù)據(jù)庫管理系統(tǒng)也越來越豐富。性能越來越好,功能越來越強,它的應(yīng)用遍及各個領(lǐng)域。2.4數(shù)據(jù)模型和關(guān)系數(shù)據(jù)庫數(shù)據(jù)庫是某個企業(yè),組織或部門所涉及的數(shù)據(jù)的綜合。它不僅反映數(shù)據(jù)本身的內(nèi)容,而且反映數(shù)據(jù)之間的聯(lián)系。在數(shù)據(jù)庫中是用數(shù)據(jù)模型(DataModel)這個工具來對現(xiàn)實世界進行抽象的。數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)中用來提供信息表示和操作手段的框架。不同的數(shù)據(jù)模型是提供給我們模型化數(shù)據(jù)和信息的不同工具,根據(jù)模型應(yīng)用的不同目的,可以將模型分為兩個不同的層次。一是概念模型(也稱為信息模型),它是按用戶的觀點來對信息和數(shù)據(jù)進行建模。是現(xiàn)實世界到信息世界的第一層抽象,是用戶和數(shù)據(jù)庫設(shè)計人員之間交流的語言。二是數(shù)據(jù)模型。它用于機器世界。通常需要有嚴格的形式化定義,而且常會加上一些限制或規(guī)定,以便于機器上的實現(xiàn)。它通常有一組嚴格的定義了語法和語義的語言。人們可以用它來定義,操縱數(shù)據(jù)庫中的數(shù)據(jù)。它是按計算機系統(tǒng)的觀點對數(shù)據(jù)進行建模。主要有層次模型,網(wǎng)狀模型和關(guān)系模型三種。而關(guān)系模型是這三種模型中最重要的模型。由于它概念簡單,清晰,用戶易懂易用,有著嚴格的數(shù)學(xué)基礎(chǔ)以及在此基礎(chǔ)上發(fā)展起來的關(guān)系數(shù)據(jù)庫理論。簡化了程序的工作和數(shù)據(jù)庫開發(fā)建立的工作,因此關(guān)系模型誕生以后發(fā)展迅速,成為深受用戶歡迎的數(shù)據(jù)模型。綜上所述,由于數(shù)據(jù)庫系統(tǒng)具有許多優(yōu)點,它的出現(xiàn)使信息系統(tǒng)的研制從圍繞加工數(shù)據(jù)的程序為中心轉(zhuǎn)變到圍繞共享的數(shù)據(jù)庫來進行。這既便于數(shù)據(jù)的集中管理,也有利于應(yīng)用程序的研制和維護。提高了數(shù)據(jù)的利用率和相容性。從而提高了做出決策的可靠性。因此,大型復(fù)雜的信息系統(tǒng)大多數(shù)以數(shù)據(jù)庫為核心,數(shù)據(jù)庫系統(tǒng)在計算機應(yīng)用中起著越來越重要的作用。2.5MicrosoftAccess2000的主要特點是一個關(guān)系數(shù)據(jù)庫管理系統(tǒng),能夠?qū)崿F(xiàn)數(shù)據(jù)的獨立,避免數(shù)據(jù)的不一致,實現(xiàn)數(shù)據(jù)的共享和數(shù)據(jù)的保護,防止了數(shù)據(jù)的冗余。能夠?qū)崿F(xiàn)數(shù)據(jù)庫的建立,數(shù)據(jù)的保存,數(shù)據(jù)的查詢檢索,方便的完成對數(shù)據(jù)庫的各種操作。與以往的版本相比,增加了很多適應(yīng)網(wǎng)絡(luò)應(yīng)用和INTERNET發(fā)展的功能,它能夠把信息的創(chuàng)建,發(fā)布和共享緊密和高效的結(jié)合起來。2.6關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言—SQLSQL(StructuredQueryLanguage)語言是1974年由Boyce和Chamberlin提出的。在IBM公司SanJoseResearchLaboratory研制的SystemR上實現(xiàn)了這種語言。由于它功能豐富,使用方式靈活,語言簡潔易學(xué)等突出優(yōu)點,在計算機工業(yè)界和計算機用戶中倍受歡迎并深深扎根。1986年10月,美國國家標(biāo)準(zhǔn)局(ANSI)的數(shù)據(jù)庫委員會(X3H2)批準(zhǔn)了SQL作為關(guān)系數(shù)據(jù)庫語言的美國標(biāo)準(zhǔn)。同年公布了標(biāo)準(zhǔn)SQL文本。此后不久,國際化標(biāo)準(zhǔn)組織(ISO)也做出了同樣的決定。SQL成為國際標(biāo)準(zhǔn)以后,數(shù)據(jù)庫產(chǎn)品的各個廠家紛紛推出各自的支持SQL的軟件或者與SQL的接口軟件。這樣就造成了一種極大的可能性,不管是微型機,小型機,還是大型機,不管是哪種數(shù)據(jù)庫系統(tǒng),都采用SQL作為共同的數(shù)據(jù)存取語言和標(biāo)準(zhǔn)接口。從而使未來的數(shù)據(jù)庫世界有可能連接為一個統(tǒng)一的整體。這個前景當(dāng)然是十分誘人和意義重大的。因而有人把SQL被采納為標(biāo)準(zhǔn)及其以后的發(fā)展稱為是“一場革命”。SQL的英文名稱是結(jié)構(gòu)化的查詢語言。實際上它的功能包括查詢(Query),操縱(Manipvation),定義(Definition)和控制(Control)四個方面。是一個綜合的,通用的,功能極其強大的關(guān)系數(shù)據(jù)庫語言。SQL的主要特點是:(1)一體化的特點(2)兩種使用方法,統(tǒng)一的語言結(jié)構(gòu)(3)高度的非過程化(4)語言簡潔,易學(xué)易用SQL的影響遠遠超出了數(shù)據(jù)庫領(lǐng)域。SQL成為國際標(biāo)準(zhǔn)以后,它在數(shù)據(jù)庫以外的其他領(lǐng)域中也開始受到了重視和采用。把SQL的數(shù)據(jù)檢索功能和圖形功能,軟件開發(fā)工具結(jié)合起來的產(chǎn)品越來越多。因此,在未來的一段相當(dāng)長的時間里,SQL將是關(guān)系數(shù)據(jù)庫領(lǐng)域中的一個主流語言。在軟件工程,人工智能等領(lǐng)域SQL也將有很大潛力。2.7VisualBasic6.0(中文版)主要特點VisualBasic具有事件驅(qū)動的編程機制和新穎簡明的可視化設(shè)計工具,為開發(fā)人員快速設(shè)計各種應(yīng)用程序提供了有力工具,使Windows編程變得容易。VB6.0增加了代碼編譯器和一個更快的窗體引擎,使程序運行得更快,還增加了Internet功能。用VB編寫的應(yīng)用程序是事件驅(qū)動的,程序中的代碼是在響應(yīng)不同的事件時執(zhí)行不同的代碼片斷。事件可以由用戶操作觸發(fā),也可以由來自操作系統(tǒng)或其他應(yīng)用程序的消息觸發(fā)。VB使用交互方式開發(fā)應(yīng)用程序,使編碼,編譯和測試代碼這三個步驟間不再有明顯的界限。通過這種方式,代碼運行的效果可以在開發(fā)時進行測試,而不必等到編譯完成以后。提供了眾多的向?qū)善骱驮O(shè)計器,用于幫助用戶實現(xiàn)快速完成開發(fā)程序設(shè)計,縮短了軟件開發(fā)周期。提供了新的數(shù)據(jù)控見ADO及ACTIVEX控件,允許用戶自定義控件的使用,滿足了各種用戶不同的需要。第3章系統(tǒng)設(shè)計數(shù)據(jù)庫設(shè)計所要解決的問題是:對于一個給定的應(yīng)用領(lǐng)域,設(shè)計優(yōu)化的數(shù)據(jù)庫邏輯和物理系統(tǒng),使之滿足用戶的信息管理要求和數(shù)據(jù)操作要求,有效的支持各種應(yīng)用系統(tǒng)的開發(fā)和運行。數(shù)據(jù)庫設(shè)計的目標(biāo)是為用戶和各種應(yīng)用系統(tǒng)提供一個高效率的運行環(huán)境。因為數(shù)據(jù)庫的生命周期模型是觀察數(shù)據(jù)庫演變過程的重要工具,所以我們可以通過數(shù)據(jù)庫的生命周期模型來概略的了解一下數(shù)據(jù)庫的設(shè)計全過程。數(shù)據(jù)庫的生命周期可分為兩個階段:一是數(shù)據(jù)庫設(shè)計階段;二是數(shù)據(jù)庫實現(xiàn)和操作階段。數(shù)據(jù)庫的分析和設(shè)計階段分為需求分析,概念設(shè)計,邏輯設(shè)計,物理設(shè)計四個子階段。數(shù)據(jù)庫的實現(xiàn)和操作階段由數(shù)據(jù)庫的實現(xiàn),操作與監(jiān)督,修改與調(diào)整三個子階段組成。數(shù)據(jù)庫的設(shè)計過程如圖所示。圖3-1數(shù)據(jù)庫設(shè)計過程現(xiàn)實世界需求分析概念數(shù)據(jù)庫設(shè)計邏輯數(shù)據(jù)庫設(shè)計圖3-1數(shù)據(jù)庫設(shè)計過程現(xiàn)實世界需求分析概念數(shù)據(jù)庫設(shè)計邏輯數(shù)據(jù)庫設(shè)計物理數(shù)據(jù)庫設(shè)計邏輯數(shù)據(jù)庫模式概念數(shù)據(jù)庫模式需求分析說明書物理數(shù)據(jù)庫模式與數(shù)據(jù)庫管理系統(tǒng)相關(guān)獨立于數(shù)據(jù)庫管理系統(tǒng)3.1需求分析需求分析是軟件生命周期的一個重要階段,是軟件開發(fā)與設(shè)計的最關(guān)鍵的時期,是軟件開發(fā)與設(shè)計的基礎(chǔ)。它最根本的任務(wù)是確定為了滿足用戶的需求系統(tǒng)必須做什么。具體地說,應(yīng)該確定系統(tǒng)必須具有的功能和性能,系統(tǒng)要求的運行環(huán)境,并且預(yù)測系統(tǒng)發(fā)展的前景。只有在正確的需求分析基礎(chǔ)之上,才能真正理解整個系統(tǒng)所要求完成的功能,從而指導(dǎo)管理系統(tǒng)所包含內(nèi)容的設(shè)計工作。通過需求分析應(yīng)得出用數(shù)據(jù)流圖等描繪的精確的系統(tǒng)邏輯模型。3.1.1目前圖書管理工作狀況現(xiàn)在絕大部分圖書管理工作都由人工對圖書館的進書、借書、換書等進行分類、整理、保存,這樣做不僅浪費了大量工作人員的時間和精力,而且由于記錄數(shù)據(jù)的卡片檔案容易損壞或丟失,工作速度慢、效率低,不能及時、準(zhǔn)確的反映每一種商品的信息。3.1.2系統(tǒng)設(shè)計功能分析圖書館管理系統(tǒng)的主要目標(biāo)是實現(xiàn)圖書館的圖書管理、借書證管理、借書和還書管理、圖書館工作人員的管理以及簡單的查詢功能。要求能實現(xiàn)圖書的錄入、修改、刪除,借書證的辦理、修改、掛失、退證,圖書館工作人員的增加、退職、修改;借書要求登記經(jīng)手人和借書日期等,還書時要求有續(xù)借功能;圖書查詢要求實現(xiàn)簡單的模糊查詢,還要求查詢過期圖書。圖書管理每種圖書可以有多本,每本書有一個唯一的編碼,即“條碼”。因此,該功能的窗口分上下半?yún)^(qū),對應(yīng)兩個表,上半?yún)^(qū)為freeform數(shù)據(jù)窗口,完成books表的數(shù)據(jù)維護功能。下半?yún)^(qū)為grid數(shù)據(jù)窗口,對應(yīng)bookid表,記錄個數(shù)為該種書的冊數(shù),自動生成相應(yīng)的條碼,記入bookid表中。1.借書證管理完成Reader表的數(shù)據(jù)維護功能(讀者添加、刪除、修改、掛失、查詢)。2.圖書館工作人員管理完成librarian表數(shù)據(jù)維護功能(館員添加、離任、變動、查詢)。3.借書管理輸入借書證號,則自動顯示讀者信息;列出已借圖書信息(如有過期圖書則醒目顯示,提示停止借閱);顯示還可借書冊數(shù)。輸入書號,自動顯示相應(yīng)圖書信息(狀態(tài)為“在架”),選擇其中一條。借書日期為當(dāng)前日期,自動顯示。針對讀者不知道圖書的情況,設(shè)計如下:設(shè)置一查詢按鈕,調(diào)用圖書查詢功能,查詢完畢其結(jié)果自動返回到借書登記屏幕上。借閱成功,bookid表相應(yīng)記錄中“狀態(tài)”為“借出”,bookmove表中增加一條借閱記錄,記錄其中4個字段值:圖書條碼,借書證號,借出日期,借出經(jīng)手人。字段“是否歸還”值為“假”,后2個字段值為空。4.還書、續(xù)借輸入圖書條碼,核對圖書借閱信息。若有其他過期圖書,醒目顯示之,并提醒。還書日期為當(dāng)前日期,自動顯示。還書成功,bookid表相應(yīng)圖書記錄中“狀態(tài)”字段改為“在架”,bookmove表中“是否歸還”值為“真”,記入“歸還日期”、“歸還經(jīng)手人”字段的值。續(xù)借時把借書日期改為當(dāng)前日期,經(jīng)手人改為當(dāng)前館員。5.圖書查詢靈活查詢方式按條碼、館藏號、分類號、書名、作者、ISBN、出版社等條件查詢。書名中,輸入部分內(nèi)容即可查出。如:輸入“工程”即可查出“軟件工程”、“軟件工程導(dǎo)論”、“工程設(shè)計”等圖書。作者、出版社的查詢要求同上。書號、書名、作者、ISBN、出版社這些查詢條件之間是“與”關(guān)系。若是空格,忽略此條件。如書名=“工程”&出版社=“科學(xué)”,其余為空,則查詢書名中包含“工程”且出版社中包含“科學(xué)”的所有圖書。過期查詢,列出當(dāng)前已過期圖書、借閱者、借閱日期。3.1.3系統(tǒng)性能要求1.操作方便、簡潔、直觀、有良好的用戶界面。2.有較快的運行速度。3.下拉式菜單。4.能夠方便的進行系統(tǒng)維護。5.有較好的兼容性。3.2系統(tǒng)總體設(shè)計總體設(shè)計又稱概要設(shè)計或初步設(shè)計。回答了“概括地說,系統(tǒng)應(yīng)該如何實現(xiàn)?”的問題。它的必要性在于:總體設(shè)計可以站在全局高度上,花較少成本,從較抽象的層次上分析對比多種可能的系統(tǒng)實現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的軟件結(jié)構(gòu),從而用較低的成本開發(fā)出較高質(zhì)量的軟件系統(tǒng)。商品營銷管理系統(tǒng)就是在此要求下開發(fā)完成的3.2.1系統(tǒng)的功能模塊設(shè)計對上述各項功能進行集中,分塊,按照結(jié)構(gòu)化程序設(shè)計的要求。得到如圖圖書館管理系統(tǒng)系統(tǒng)維護模塊圖書館管理系統(tǒng)系統(tǒng)維護模塊借書還書模塊查詢模塊幫助系統(tǒng)模塊系統(tǒng)管理圖3-2系統(tǒng)功能模塊圖圖書管理功能讀者管理功能館員管理功能借書功能還書功能續(xù)借功能總和查詢功能過期查詢功能密碼管理用戶管理3.2.2數(shù)據(jù)庫設(shè)計本系統(tǒng)規(guī)劃實體有:圖書實體,圖書條碼實體,讀者實體,圖書館工作人員(館員)實體。所設(shè)計的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)如下:館藏書號(books):館藏書號(b_no),圖書分類號(b_k_no),書名(b_name),作者(b_writer),出版社(b_public),出版日期(b_date),ISBN(b_isbn),價格(b_price),總數(shù)(b_count),在架數(shù)(b_left),登記人(d_l_no),登記日期(d_date)圖書條碼(bookid)圖書條碼(b_id),館藏書號(b_no),狀態(tài)(b_statu)讀者信息(reader):借書證號(r_no),姓名(r_name),性別(r_sex),出生日(r_birth),單位(r_department),身份證號(r_cardid),電話(c_tel),可借冊數(shù)(r_remain)圖書館工作人員信息表(librarian):館員編號(l_no),姓名(l_name),性別(l_sex),出生日(l_birth),部門(l_part),職務(wù)(l_position),口令(l_password)借閱信息(bookmove):圖書條碼(b_id),借書證號(r_no),借出日期(bm_date),借出經(jīng)手人(bm_l_no),是否歸還(bm_yn),歸還日期(r_date),歸還經(jīng)手人(r_l_no)。各個Table的設(shè)計詳細結(jié)果如下表格所示,每個表格表示在數(shù)據(jù)庫中的一個Table。表3-1館藏書號表Books列名數(shù)據(jù)類型可否空說明b_noChar(6)NOTNULL館藏書號(主鍵)B_k_noChar(2)NOTNULL圖書分類號B_nameVarChar(30)NOTNULL書名B_writerChar(8)NULL作者B_publicVarChar(30)NULL出版社b_dateDateNULL出版日期b_isbnChar(13)NOTNULLISBNB_priceNumeric(5,2)NOTNULL價格b_countSmallIntNOTNULL總數(shù)b_leftSmallIntNOTNULL在架數(shù)d_l_noChar(4)NOTNULL登記人(外鍵)d_dateDateNOTNULL登記日期表3-2圖書條碼表Bookid列名數(shù)據(jù)類型可否空說明b_idChar(10)NOTNULL圖書條碼(主鍵)b_noChar(6)NOTNULL館藏書號(外鍵)b_statuChar(1)NOTNULL狀態(tài)表3-3借閱信息表Bookmove列名數(shù)據(jù)類型可否空說明b_idChar(10)NOTNULL圖書條碼(主鍵)r_noChar(6)NOTNULL借書證號(主鍵)Bm_dateDateNOTNULL借書日期Bm_l_noChar(4)NOTNULL借書經(jīng)手人(外鍵)bm_ynChar(1)NOTNULL是否歸還R_dateDateNULL還書日期R_l_noChar(4)NULL還書經(jīng)手人(外鍵)表3-4圖書館工作人員信息表Librarian列名數(shù)據(jù)類型可否空說明l_noChar(4)NOTNULL館員編號(主鍵)l_nameChar(6)NOTNULL姓名l_sexChar(1)NOTNULL性別l_birthDateNOTNULL生日l_partVarChar(20)NOTNULL部門L_positionChar(8)NOTNULL職務(wù)L_passwordChar(8)NULL口令L-addressChar(50)NOTNULL家庭住址表3-5讀者信息表Reader列名數(shù)據(jù)類型可否空說明r_noChar(6)NOTNULL借書證號(主鍵)列名數(shù)據(jù)類型可否空說明l_noChar(4)NOTNULL館員編號(主鍵)L_nameChar(6)NOTNULL姓名l_sexChar(1)NOTNULL性別L_birthDateNOTNULL生日l_partVarChar(20)NOTNULL部門L_positionChar(8)NOTNULL職務(wù)L_passwordChar(8)NULL口令L-lendChar(1)NOTNULL借書冊數(shù)L-stealChar(1)NOTNULL丟失狀態(tài)3.2.3E—R圖及其實體間關(guān)系描敘圖書圖書圖書條碼讀者登記包括借閱圖書館工作人員經(jīng)手管理登記日期第4章系統(tǒng)詳細設(shè)計及實現(xiàn)詳細設(shè)計階段的根本目標(biāo)是確定應(yīng)該怎樣具體地實現(xiàn)所要求的系統(tǒng),經(jīng)過這個階段的設(shè)計工作,應(yīng)該得出對目標(biāo)系統(tǒng)的精確描述,而在編碼階段可以把這個描述直接翻譯成用某種程序設(shè)計語言書寫的程序。本系統(tǒng)中共分為五個模塊,其中系統(tǒng)維護模塊、借書還書模塊、查詢模塊、幫助系統(tǒng)模塊、系統(tǒng)管理模塊等進行了詳細設(shè)計。4.1模塊劃分及流程4.1.1系統(tǒng)維護模塊這個模塊主要包括圖書管理,讀者管理和館員管理功能,包括對這些息的收集和保存.圖書管理中每種圖書可以有多本,每本書有一個唯一的編碼,即“條碼”。該功能的窗口分上下半?yún)^(qū),對應(yīng)兩個表,上半?yún)^(qū)為freeform數(shù)據(jù)窗口,完成books表的數(shù)據(jù)維護功能。下半?yún)^(qū)為grid數(shù)據(jù)窗口,對應(yīng)bookid表,記錄個數(shù)為該種書的冊數(shù),自動生成相應(yīng)的條碼,記入bookid表中.主要功能是利用錄入窗體直接向打開的數(shù)據(jù)庫表中添加新數(shù)據(jù)。錄入內(nèi)容包括:圖書基本信息、讀者基本信息、館員信息。功能劃分結(jié)構(gòu)如圖:信息錄入模塊信息錄入模塊讀者信息錄入信息錄入館員信息錄入圖書信息錄入開始開始選擇信息處理類型添加記錄?添加記錄記錄刪除?刪除數(shù)據(jù)記錄修改?修改記錄保存更新的數(shù)據(jù)記錄返回主菜單圖4-2信息處理流程圖YYY4.1.2借書還書模塊該模塊是圖書管理系統(tǒng)的核心,完成圖書借閱功能,通過讀者提供的讀者號和圖書號碼將讀者借閱圖書信息添加到數(shù)據(jù)庫中去。還書功能,還書時檢查過期與否并給出提示信息借書還書管理還書信息管理借書還書管理還書信息管理借書信息管理還書信息添加借書信息查詢借書信息修改借書信息添加還書信息修改還書信息查詢圖4-3借書還書功能模塊圖借閱信息實體借閱信息實體讀者信息書籍信息借書日期圖4-4借閱實體E-R圖書籍信息書籍信息出版日期間介書籍編號書籍類別書籍名稱作者姓名圖4-5書籍信息實體4.1.3查詢模塊該模塊提供讀者快捷的圖書查找功能,以利于借書。讀者可以通過圖書條碼、作者、關(guān)鍵字及類型的模糊查詢,同時可以調(diào)用借閱窗口方便借書。該模塊的功能實現(xiàn)主要是依靠booksadoc控件和圖書信息dbgrid控件來實現(xiàn)整個查詢。圖4圖4-5查詢流程圖輸入查詢條件查詢并顯示結(jié)果?清除查詢條件開始選擇查詢項目返回主菜單YY一YNYN4.1.4幫助系統(tǒng)幫助系統(tǒng)是對圖書管理系統(tǒng)的一個完善,它包括兩個連接:幫助主題和關(guān)于圖書館管理系統(tǒng)。目的是方便用戶的使用。4.1.5系統(tǒng)管理本程序主要包括登陸窗口的建立。注意本程序的用戶名和密碼存儲在數(shù)據(jù)庫中,可以有系統(tǒng)管理員更改。在進入系統(tǒng)時,要輸入密碼,密碼不正確,系統(tǒng)會提示重新輸入,輸入三次不正確就退出系統(tǒng)。如果輸入密碼正確則會進入系統(tǒng)。輸入用戶名輸入用戶名次數(shù)>3?進入系統(tǒng)退出系統(tǒng)正確?輸入密碼重新輸入?開始YNYNYN圖4-6系統(tǒng)登陸流程圖4.2系統(tǒng)的實現(xiàn)4.2.1主界面的實現(xiàn)作為一個管理系統(tǒng),不僅要求它具有實用性和可操作性.系統(tǒng)安全性也是必不可少的部分之一.一個圖書館管理系統(tǒng)不是任何人都可以使用的.即便可以使用,也應(yīng)具有不同的權(quán)限.為了區(qū)分這一不同,登陸窗體就顯得很必要了.本系統(tǒng)數(shù)據(jù)庫的鏈接,Access數(shù)據(jù)庫為單機版的小型數(shù)據(jù)庫.采用的是ODBC傳統(tǒng)數(shù)據(jù)源為連接.創(chuàng)建主窗口MDIForm.1.frm和主菜單同時主窗口中加入工具欄以方便操作,如圖:圖4-7主界面圖4-8菜單編及器創(chuàng)建公用模塊,模塊中實現(xiàn)數(shù)據(jù)庫的連結(jié)和登陸窗口的打開,代碼如下:PublicdbnAsDatabasePublicConnAsConnection'數(shù)據(jù)連接PublicrsAsRecordset'指針SubMAIN()Setdbn=OpenDatabase(App.Path&"/lib.MDB")LoadfrmLoginfrmLogin.ShowEndSub4.2.2系統(tǒng)維護模塊的創(chuàng)建圖書信息模塊的創(chuàng)建,如圖圖4-9圖書信息模塊這個模塊主要完成圖書信息的查詢、修改、刪除和添加。主要利用兩個adoc控件顯示books表和book_id的信息,一個dbgrid控件來顯示book_id的信息以利于查詢。輸入完畢,單擊“保存”按鈕,程序?qū)⑹紫葯z查內(nèi)容是否符合要求,然后檢查是否有重復(fù)紀錄,最后添加到數(shù)據(jù)庫中。讀者信息窗口,如圖圖4-10讀者信息窗口該模塊提供對讀者信息的添加、刪除、修改、和查找,主要方法是使用了一個adoc控件來對reader表的讀取、修改及查詢。窗體中各個控件屬性這里就不一一介紹,將各種文本框放在窗體的框架中,組成“讀者種類”和“讀者信息”兩項。借書還書模塊的創(chuàng)建該模塊是圖書管理系統(tǒng)的核心,完成圖書借閱功能,通過讀者提供的讀者號和圖書號碼將讀者借閱圖書信息添加到數(shù)據(jù)庫中去。圖書借閱模塊的創(chuàng)建,如圖圖4-11圖書借閱窗口還書模塊的創(chuàng)建,如圖。該模塊主要實現(xiàn)添加還書信息,修改還書信息和查詢還書信息。載入窗體時,將自動加入所有借書的讀者姓名。圖4-12還書窗口4.2.3系統(tǒng)管理模塊的創(chuàng)建圖4-13登陸窗口本程序主要包括登陸窗口的建立,注意本程序的用戶名和密碼存儲在數(shù)據(jù)庫中,可以由系統(tǒng)管理員修改登陸窗口4.2.4幫助系統(tǒng)創(chuàng)建圖4-14幫助系統(tǒng)第5章系統(tǒng)的測試與運行軟件測試是保證軟件質(zhì)量的關(guān)鍵,它是對需求分析設(shè)計和編碼的最后復(fù)審。在軟件生命周期的每個階段,都不可避免地會產(chǎn)生錯誤,通常在編寫出每個原程序后,就要對它進行必要的測試,這步工作自己來完成。此后由專門的測試人員進行各種綜合測試。軟件產(chǎn)品可用黑盒法和白盒法進行測試,通常兩種方法結(jié)合使用。我在測試系統(tǒng)時先進行黑盒法測試,即檢查程序是否輸出正確的結(jié)果,而后進行白盒測試,即了解程序的內(nèi)部結(jié)構(gòu)和處理過程,對程序中重要的邏輯路線進行測試,在不同點檢查程序狀態(tài),確定實際狀態(tài)與時期的狀態(tài)是否一致。軟件測試過程中,單元測試和集成測試是重要的。單元測試的目的,是保證每個模塊作為一個單元能正確運行,因為每個模塊是相對獨立的。集成測試是對組裝的模塊進行測試,我在測試時,是先進行集成測試,看模塊間能否正確地傳遞參數(shù),以完成整個系統(tǒng)的功能。在測試軟件的過程中,發(fā)現(xiàn)了一些編輯上的失敗和錯誤,經(jīng)過不斷地調(diào)試和運行,找到有效的解決方法。結(jié)果表明,每個功能都按照系統(tǒng)的要求正常使用。當(dāng)然,整個系統(tǒng)在測試過程中仍發(fā)現(xiàn)了不少錯誤,但在指導(dǎo)教師姜守旭老師的指導(dǎo)下改正并完善了所發(fā)現(xiàn)的錯誤和不足之處,達到了測試要求。這個程序主要使用的是控件來對數(shù)據(jù)庫進行操作,只是單機版的,功能也不是很完善。而且,數(shù)據(jù)庫采用access來做,有一定的方便性,但不是和網(wǎng)絡(luò)和企業(yè)級的應(yīng)用。對于更完善的圖書管理系統(tǒng)應(yīng)該是客戶端型的,支持館際互借之類的操作。對于這樣的系統(tǒng)首先應(yīng)該用SQLSERVER2000之類的大型數(shù)據(jù)庫管理軟件來創(chuàng)建數(shù)據(jù)庫,同時數(shù)據(jù)結(jié)構(gòu)也應(yīng)該更加豐富。其次,程序中隊數(shù)據(jù)庫的操作應(yīng)采用最新的ADO技術(shù)。此外,應(yīng)該采用更加安全的用戶管理。結(jié)論經(jīng)過一個學(xué)期的努力工作,在陳惠鵬老師的精心指導(dǎo)下,我完成了畢業(yè)設(shè)計任務(wù):圖書館管理系統(tǒng)。本系統(tǒng)選用的開發(fā)工具是VB6.0和Access本論文設(shè)計首先基于對一些圖書館管理實際情況的了解,認真做出了用戶的需求分析;接著從基礎(chǔ)數(shù)據(jù)庫分析開始,進行了應(yīng)用軟件的開發(fā)工作;最后,根據(jù)對系統(tǒng)所作的分析和設(shè)計,完成了圖書管理系統(tǒng)的開發(fā)。本系統(tǒng)主要實現(xiàn)了對圖書的借閱,人士的管理和讀者的管理等功能。經(jīng)過用戶使用,反映良好,操作方便,工作效率明顯提高。本系統(tǒng)界面友好、功能齊全、易于操作維護,使非計算機專業(yè)人員能輕而易舉的進行操作。在這大學(xué)本科學(xué)習(xí)的最后一個學(xué)期里,作為把理論同生產(chǎn)實踐相結(jié)合的最重要一環(huán),畢業(yè)設(shè)計使我的動手能力和獨立解決問題的能力得到了很大的鍛煉和提高。但由于時間倉促、水平有限,系統(tǒng)還存在某些功能不足,有待改進和開發(fā)。本人將在以后的時間里繼續(xù)加強學(xué)習(xí),積累經(jīng)驗,以使本系統(tǒng)功能更齊備,性能更良好。完美地服務(wù)于用戶。在畢業(yè)設(shè)計階段,使自己在計算機管理技術(shù)方面有更進一步了解,拓寬了知識面,并增強了獨立思考能力和培養(yǎng)了思維能力。我相信,這會為我以后在工作中獨立思考和解決問題打下良好的基礎(chǔ)。致謝短短兩個月的畢業(yè)設(shè)計,使我從中受到了很大的教育和啟迪,不僅將大學(xué)所學(xué)的知識進行了實際應(yīng)用,還學(xué)到了很多書本上學(xué)不到的知識。開闊了視野,增長了知識,積累了經(jīng)驗。充分鍛煉了自己的動手和應(yīng)用能力,真正做到了理論聯(lián)系實際。首先感謝導(dǎo)師陳惠鵬老師的關(guān)心、指導(dǎo)和教誨。我在論文期間的工作自始至終都是在陳老師全面、具體,耐心的指導(dǎo)下進行的。陳老師淵博的學(xué)識、敏捷的思維、嚴謹求實的態(tài)度和誨人不倦的精神使學(xué)生受益非淺,而且樂觀、幽默、平易近人,令我終身難忘。對我們的論文質(zhì)量嚴格要求,十分令人尊敬。他的崇高品質(zhì)對我們學(xué)生將是永遠的鞭策。還要感謝全班同學(xué)和朋友們對我的關(guān)心、鼓勵和幫助。在論文設(shè)計過程中,他們?yōu)槲姨峁┝舜罅繒蛯氋F經(jīng)驗。整個畢業(yè)設(shè)計這段過程給我留下了大學(xué)生活中一段最美好、最難忘的回憶。最后,再次向所有關(guān)心、幫助、理解、支持我的老師和朋友們致以深深的謝意。謝謝你們對我的無私幫助!參考文獻[1]張海藩編:《軟件工程導(dǎo)論》(修訂版),清華大學(xué)出版社,1992年2月,PP.150-156[2]鄭若忠、王鴻武編:《數(shù)據(jù)庫原理與方法》,湖南科技出版社,1992年5月,PP.54-55[3]薩師煊、王珊編:《數(shù)據(jù)庫系統(tǒng)概論》,高等教育出版社,2000年2月,PP.25-30[4]俞盤祥、沈金發(fā)編:《數(shù)據(jù)庫系統(tǒng)原理》,清華大學(xué)出版社,1992年7月,PP.30-41[5]黃梯云編:《管理信息系統(tǒng)導(dǎo)論》,機械工業(yè)出版社1997年11月第2版,PP.588[6]盧毅編:《數(shù)據(jù)庫應(yīng)用與維護》,北京教育出版社,2002年3月,PP.22-25[7]錢樹人編:《程序設(shè)計語言原理》,高等教育出版社,2000年5月,PP.104-117[8]M.Deen,principlesadPractriceofDatabaseSystems,HigherandFurtherEducationDivision,1987年6月,PP.33-32[9]LeoJ.Cohen,DatabasemanagemantSystem,Q.E,D.Inform-ationSc-iences,inc,Wellesley,Massachusetts02181,1986,PP.130-136[10]I.T.H.arwryszkiewycz.DatabaseAnalysisiandDesign,SecondEdition,1991,PP.213-220[11]韋源、于平編:《VisualBasic程序設(shè)計基礎(chǔ)》,清華大學(xué)出版社,2001年5月,PP.1-25[12]趙越編:《VisualBasic6.0forWindows編程速成指南》,同濟大學(xué)出版社,1998年,PP.45-50[13]A.F.Cardenas,DatabaseManagementSystem,GRANADALondonTorontoSydneyNewYork,PP.1985[14]黃梯云主編,《管理信息系統(tǒng)導(dǎo)論》(第二版),機械工業(yè)出版社,2000年,PP.98-102[15]施伯樂、何繼潮、崔靖編,《關(guān)系數(shù)據(jù)庫的理論及應(yīng)用》,河南科技出版社,1991年,PP.150-154附錄1英文譯文數(shù)據(jù)庫設(shè)計真實世界和它的代表數(shù)據(jù)庫的存在在于我們能存取現(xiàn)實世界事物的信息的需求。這樣,在我們開始著手于數(shù)據(jù)庫管理系統(tǒng)(DBMS’s)的技術(shù)方面和使用之前,對在數(shù)據(jù)庫中現(xiàn)實和它的代表之間的關(guān)系又一個清晰的認識是有必要的。圖2-1展示了一個具有四層抽象或一般性的模型。一個實體類型是事物的一個類,例如“雇員”,“公司”,或“課程”。實體類型,如雇員,并不是指任意一個具體的雇員,而是指雇員的整體概念。每個實體類型都有一組預(yù)制相聯(lián)系的屬性。屬性是實體類型的特性,用來定義和描述某種類型的特定實體。姓名,雇員號,性別,工齡,職稱,和其它的,都可能是雇員實體類型的屬性。不用說,實體類型,僅僅是個概念,不再任何數(shù)據(jù)庫中實際出現(xiàn)。然而,他們代表與數(shù)據(jù)庫設(shè)計任務(wù)相關(guān)抽象的層次。這就是說,設(shè)計者在決定數(shù)據(jù)庫中什幺將被代表時,他會用實體類型的術(shù)語來思考。表2-1抽象的層次層次舉例實體類型雇員的“概念”實體事例一個真實的雇員邏輯代表一組描述雇員的屬性值物理代表屬性值的編碼,如[DANPRICE,4046,M,7PROGRAMMER……]一個特定的雇員是實體類型“雇員”的一個實例。這種事例叫做實體事例,他們存在于模型的下一個更具體的層次中。實體事例并不真正出現(xiàn)在數(shù)據(jù)庫中,這不是因為他們是真實存在的物理事務(wù),而是因為實例是數(shù)據(jù)庫中信息的主體。一個實體事例用一組于實體類型相連的某些屬性的值來表示。模型的第三個層次叫做邏輯代表層。注意實體事例的邏輯代表并不描述實體事例的一切,也就是說,他不必包括它的實體類型的所有屬性。進而,我們在組織編輯資料的基礎(chǔ)上選擇具體的屬性,這些屬性的值構(gòu)成實體事例的邏輯代表。模型中第四層也是最具體的層是物理代表層。它是邏輯代表層的一些簡潔的物理編碼。一個編碼可能包括印在紙上的阿拉伯?dāng)?shù)字和大寫的羅馬字母。這樣,“DANPRICE,4064,M,7,PROGRAMMER……”是一個實體事例的物理代表(這些值與上面提到的實體類型的屬性相對應(yīng))。一種物理代表可以使用大寫和小寫字母。另一種方法可按ASCII編碼系統(tǒng)用相等的十六進制代表特征,等等。在圖2-1種,只有物理代表層能給出真實的例子,這一點很有趣。實體類型僅僅是一個概念,沒有具體的代表;實體類型是一個活著的人;邏輯代表是一組值,但不限定任何特殊的表示方法。通常,對任意一個邏輯代表都有不同的物理表示,因此,這種差別不是不明顯的。人們可能會覺得奇怪,這種相當(dāng)抽象的模型與學(xué)習(xí)數(shù)據(jù)庫管理有什幺聯(lián)系?這本書以下的幾部分會講到所有的四個層,這會幫助你清晰的理解四層之間的關(guān)系和作為一個系統(tǒng)。事實上,在過去數(shù)據(jù)庫中發(fā)生的爭論和誤解可歸因為這四個層。數(shù)據(jù)類型和值域任何一個曾經(jīng)編過程的人都習(xí)慣了這樣一個事實:你不得不告訴計算機信息是一個整數(shù),實數(shù),字符串,布爾值或其它的值。大多數(shù)計算機由一個整數(shù)加法電路,又有一個實數(shù)加法電路,而且,通常字符串相加當(dāng)然沒有任何意義。因為在內(nèi)存中的比特資料可以被解釋成任何一種形式,計算機必須被告訴去做什幺。這就是我們熟知的類型。定義資料對象為一個特定的類型對事物內(nèi)部代表的定義有影響。舉例來說,在大多數(shù)現(xiàn)代計算機框架內(nèi)部整數(shù)表示為32位比特數(shù)的形式。在外部,整數(shù)表現(xiàn)為從0到9的數(shù)字符串的形式,可能帶有負號。當(dāng)一個資料對象被定義為整數(shù)類型時,所有標(biāo)準(zhǔn)的算術(shù)和邏輯運算都要做合適的解釋。在定義一個數(shù)據(jù)類型為整形時,定義它的整理系統(tǒng)的事件也同樣如此(可能不是如此明顯)。那就是說,要定義相對復(fù)雜的操作,如排序,是如何進行的。內(nèi)部表示和外部表示的轉(zhuǎn)換算法也是必須的。定義人一個實體的物理代表許從每個屬性的數(shù)據(jù)類型開始。其它的一些特征也必須具體化,包括每個屬性的存儲區(qū)長度和他相對其他實體在計算機中的位置。這些屬性都要進行所謂的屬性語法處理。然而,每一個滿足這些要求的值對屬性來說并不一定可用。舉個例子,對顏色這個屬性的語法要求可以實在內(nèi)存中的八個字長的字符串。如果其中存的是“Saturday”,滿足了語法要求,但對“顏色”這個屬性來說并不是一個可用的值。應(yīng)盡可能的提高數(shù)據(jù)庫的完整性,這樣,只有當(dāng)數(shù)據(jù)庫能保證存儲在其中的值對每個屬性可用時,他才是可用的。完成這個要求的一種方法是具體每個允許的值,把它作為屬性定義的一部分。在某些情況下,這種要求可以以列表的形式實現(xiàn)(如,性別中的男與女)。在值為數(shù)的屬性中,數(shù)的范圍可能很大(如,200到800位大學(xué)考試的分數(shù))而不適合列表。這種合法值的具體化要求是它的值域。描述屬性代表最理想的方法可能是設(shè)定義一個實例并已包含正確的語法,操作和值域。這當(dāng)然可能意味著,更廣范圍的數(shù)據(jù)類型可以使用。我們可以通過抽象資料型(ADT’s)的概念來實現(xiàn)這種情況。抽象資料型從七十年代早期開始在程序語言的上下文中就被討論過。例如,Pascal程序語言中包括這種特征:用傳統(tǒng)的基本資料定義新的資料,然后用新的資料定義真實的資料對象。每個程序員都可定義類型來滿足他/她的特殊需要。這樣,一個人就可以定義一個字符串形的類型WORKDAYS,其值必須為“Monday”,“Tuesday”,“Wednesday”,“Thursday”或“Friday”之一。在另一種情況下,另一個程序員對WORKDAYS的定義可能包括“Saturday”。WORKDAYS是抽象資料型的一個例子。它定義為基本資料型字符串型的一個子集,這決定了它的大部分屬性。這種用已有的基本數(shù)據(jù)定義新的數(shù)據(jù)并繼承屬性的能力極大的簡化了數(shù)據(jù)抽象型的使用。這樣在人事管理系統(tǒng)中,雇員名,配偶名,主管名的屬性都可用一個抽象數(shù)據(jù)型的實例來描述:人名。名字是怎樣在計算機內(nèi)部和外部表示的具體描述只用提供一次——作為抽象資料型定義的一部分——然后被自動的應(yīng)用到相關(guān)屬性中。通過消除定義結(jié)構(gòu)細節(jié)的共有屬性部分,例如人名,電話號碼,來簡化數(shù)據(jù)庫的設(shè)計。與此同時,他保證這些相同的形式會有相同的行為。抽象數(shù)據(jù)庫的定義包括內(nèi)部與外部表示的標(biāo)準(zhǔn)轉(zhuǎn)換過程,這減少了應(yīng)用程序員的工作,同時也保證同類事物的屬性會用同種方法表示。要求兩個屬性是統(tǒng)一抽象資料型的實例意味著他們的比較在語法上是合法的。而且,因為他們應(yīng)用相同的表示定義,一個給定的值會有完全相同的內(nèi)部表示。當(dāng)我幺考慮下面一個查詢時它的重要性便顯而易見:查找所有為他們配偶工作的人的姓名。假定主管名和配偶名都是一個雇員的屬性,執(zhí)行這個查詢就要求搜尋雇員紀錄來匹配這兩個屬性的值。在傳統(tǒng)的系統(tǒng)中,許多本應(yīng)被選中的實體被漏選,因為兩個屬性的值的表示不唯一,盡管他們指的是同一個人。變成讓計算機識別“JohnBradley”,“JohnS.Bradley”和“JohnStewartBradley”可能指的是同一個人。因為兩個屬性的定義由微小的不同和/或?qū)嶋H值時在不同的事件用不同的程序輸入的,差別便產(chǎn)生了。如果這兩個屬性的定義要求他們都是抽象資料型“人名”的實例,這個問題可能會避免。盡管這不能徹底阻止輸入與系統(tǒng)中原有的人名不同的同一個人的人名,但它能極大的減少相似性。同時,它也告訴系統(tǒng)主管名和配偶名是同一類事物的實例,那就是說,他們進行比較是有意義的。同樣的,如果工作時間和畢業(yè)時間都是抽象數(shù)據(jù)類型“Date”,那幺系統(tǒng)知道查找工作后取得畢業(yè)證的雇員是有意義的。另一方面,這樣的機制允許系統(tǒng)拒絕或質(zhì)疑這樣的查詢:查找所有郵政編碼比鞋號大的雇員名單。郵政編碼和鞋號都可能以整數(shù)存儲,因此,但從語法來看,這是一個可行的查詢。然而,這些屬性應(yīng)是不同抽象數(shù)據(jù)型的實例,這樣,數(shù)據(jù)庫系統(tǒng)可以通過他知道上述查詢是個無效的查詢。抽象資料型的使用可以減少數(shù)據(jù)庫中無效值的幾率。同時,具體要求是,或不是同一種資料抽象型的實例比只知道他們傳統(tǒng)意義上的類型更能說明那些操作是無意義的。所有的屬性都描述實體的某一方面。一些屬性扮演附加的角色:從所有其它同一類型的實體事例中區(qū)分某一特定實例。舉個例子,如果我們注意不用一個雇員后標(biāo)記一個以上的雇員,我們可知一個雇員的雇員號足以固定雇員的其它屬性值。能確保每個實體都有唯一值的屬性叫做關(guān)鍵詞。有時可能不只一個屬性唯一的確定每個實體。舉個例子,如果人事紀錄包含社會安全號(而且認為足以控制社會安全號的重復(fù)),那幺雇員號和社會安全號都可作為確定雇員的關(guān)鍵詞。關(guān)鍵詞在計算機系統(tǒng)中管理資料的所有物理有效方法中是最基本的。當(dāng)有多余一個的可用關(guān)鍵詞時,可供選者的為候選關(guān)鍵詞。通常,我們選出一個作為主關(guān)鍵詞,并決定紀錄的位置。其它便于檢索的候選關(guān)鍵詞被稱為副關(guān)鍵詞。附錄2英文原文DatabaseDesignTHEREALWORLDANDITSREPRESENTATIONDatabasesexistbecauseofaneedtobeabletostoreandretrieveinformationaboutthingsintherealworld.Thus,itseemsappropriatebeforestartingto1ookatthetechnicalaspectsofDatabaseManagementSystems(DBMS)andtheirusetohaveaclearideaoftherelationshipbetweenrealityanditsrepresentationinadatabase.Figure2--1illustratesamodelwithfourlevelsofabstract1onorgenerality.Thefirstlevelconsistsofentity-types.Anentity-typeisaclassofthings,suchas"employee,""company,"or"course."Theentity-type,employee,forexample,doesnotrefertoanyspecificemployee,butrathertothegeneralideaofone.Eachentity-typehasasetofattributesassociatedwithit.TheseareCharacteristicsEachtheentity-typethatservetoidentifyordescribeparticularentitiesofthattype.Name,employeenumber,sex,yearsofservice,andjobtitle,amongothers,mightbeattributesoftheemployeeentity-type.Needlesstosay,entity-types,whicharejustconcepts,donotactual1yappearinandatabase.However,theyrepresentthelevelofabstractionrelevanttothedatabasedesigntask.Thatis,thedesignerwillthinkintermsofentity-typeswhendecidingwhatistoberepresentedinthedatabase.Aparticularemployeewouldbeaninstanceoftheentity-type,employee.Suchinstancesarecalledentity-occurrences,andtheyexistatthenextmoreconcrete1evelofthemodel.Entity-occurrencesdonotactuallyappearindatabaseseitherbecausetheyarerea1,existingphysicalthings;butitisentity-occurrencesthatarethesubjectsoftheinformationinadatabase.Anentity-occurrenceisrepresentedbythesetofvaluesofcertainattributespresentedbythesetofvaluesofcertainattributesassociatedwithitsentity-type.Thisthirdlevelofourmodeliscalledthelogicalrepresentation1evel.Notethatthelogicalrepresentationofanentity-occurrencedoesnotexpresseverythingaboutit,thatis,itneednotcontainvaluesforalloftheattributesofitsentity-type.Rather,specificattributeswillbeselectedonthebasisoftheirrelevancetotheorganizationcompilingthedata,andthevaluesofthatsetofattributeswillcomprisethelogicalrepresentationoftheentity-occurrence.Thefourthandmostconcretelevelofthemodelisthephysicalrepresentationlevel.Thisissimplysomephysicalencodingofthelogicalrepresentation.OneencodingmightconsistofArabicdigitsanduppercaseRomanlettersprintedonpaper.Thus,"DANPRICE,4064,M,7,PROGRAMMER,…"isaphysicalrepresentationofanemployee.(Thevaluesgivencorrespondtotheattributesmentionedearlierforthisentity-type.)Analternativephysica1representationmightemploybothupperandlowercaseletters.Anothermightrepresenteachcharacterbyitshexadecimalequiva1entaccordingtotheASCIIcodingsystem,andsoon.ItisinterestingtonotethatthephysicalrepresentationlevelistheonlyoneforwhichanactualexamplecanbegiveninFigure2-1.Theentity-typeisjustaconcept,havingnoconcreterepresentation;theentity-occurrenceisalivehumanbeing,andthelogicalrepresentationisasetofvalues,butnotrestrictedtoanyparticularwayofrepresentingthem.Therewillnormallybeaconsiderablevarietyofalternativephysicalrepresentationsforanylogicalrepresentation,so,thisdistinctionisnottrivial.Onemi

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論