版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 1 引言</b></p><p> 計(jì)算機(jī)技術(shù)作為現(xiàn)代科學(xué)技術(shù)的基礎(chǔ)和核心,已經(jīng)而且將繼續(xù)對人類文明社會(huì)的進(jìn)步與發(fā)展產(chǎn)生深刻影響。在我們生活的21世紀(jì)里計(jì)算機(jī)技術(shù)已經(jīng)在各行各業(yè)中發(fā)揮著不可替代的作用。當(dāng)前越來越多的商業(yè)、企事業(yè)單位已經(jīng)將計(jì)算機(jī)技術(shù)應(yīng)用于日常的管理工作。科學(xué)的運(yùn)用計(jì)算機(jī)技術(shù)進(jìn)行管理工作不僅可以使管理工作規(guī)范化、系統(tǒng)化、自動(dòng)化而且可以節(jié)省相當(dāng)?shù)娜肆?/p>
2、、物力。它能夠使用戶的管理工作走上良性運(yùn)轉(zhuǎn)軌道,從而為其快速發(fā)展奠定基礎(chǔ)。因此各單位對與本行業(yè)相關(guān)管理軟件的需求也十分迫切。</p><p> 管理信息系統(tǒng)(MIS, Management Information System)是一個(gè)由人和計(jì)算機(jī)等組成的能夠提供信息以支持一個(gè)組織機(jī)構(gòu)內(nèi)部的作業(yè),管理、分析和決策職能的系統(tǒng)。進(jìn)、銷、存的管理是企業(yè)自身管理信息系統(tǒng)的重要組成部分。</p><p&
3、gt; 1.1 本論文的目標(biāo)與任務(wù)</p><p> 本文以書店為例,對書店圖書的進(jìn)、銷、存管理信息系統(tǒng)進(jìn)行了分析和設(shè)計(jì),重點(diǎn)是對庫存子系統(tǒng)進(jìn)行了討論。庫存管理是商場運(yùn)營的基礎(chǔ),它將采購管理和銷售管理鏈接起來共同組成一個(gè)完整的進(jìn)、銷、存管理系統(tǒng)。該系統(tǒng)可以幫助圖書倉庫管理人員對庫存商品進(jìn)行詳盡、全面地控制和管理,提供的各種庫存報(bào)表和庫存分析可以為管理者的決策提供依據(jù),從而實(shí)現(xiàn)降低庫存和減少資金占用,避免圖書積
4、壓或短缺,保證圖書經(jīng)營的正常進(jìn)行。</p><p><b> 2 需求分析</b></p><p> 需求分析的定義是:在管理信息系統(tǒng)開發(fā)生命周期中系統(tǒng)詳細(xì)調(diào)查階段的各項(xiàng)活動(dòng)和方法。</p><p> 需求分析的目標(biāo)是:按照系統(tǒng)規(guī)劃原則在業(yè)務(wù)系統(tǒng)項(xiàng)目的范圍內(nèi),具體明確系統(tǒng)開發(fā)的目標(biāo)和用戶的信息要求。通過對現(xiàn)行系統(tǒng)的管理水平、原始數(shù)據(jù)的精確
5、程度、規(guī)章制度是否齊全和切實(shí)可行、管理人員對開發(fā)新系統(tǒng)的需求等內(nèi)容的詳細(xì)調(diào)查,從而獲得軟件開發(fā)的基礎(chǔ),確定總體設(shè)計(jì)的限制條件,確認(rèn)軟件測試的具體要求,定義詳細(xì)的功能模塊,以求達(dá)到協(xié)助系統(tǒng)開發(fā)的根本目的。</p><p> 在需求分析中,主要采用業(yè)務(wù)流程圖、數(shù)據(jù)流程圖、數(shù)據(jù)字典等工具進(jìn)行描述和分析。</p><p><b> 2.1目標(biāo)</b></p>
6、<p> 需求分析簡單地說就是分析用戶的要求。需求分析是設(shè)計(jì)數(shù)據(jù)庫的起點(diǎn),需求分析的結(jié)果是否準(zhǔn)確地反映了用戶的實(shí)際要求,將直接影響到后面各個(gè)階段原設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用。</p><p><b> 2.2 任務(wù)</b></p><p> 目前市面上流行的進(jìn)銷存管理系統(tǒng)不少。但是,對于書店圖書的進(jìn)銷存系統(tǒng)來說,不需要大型的數(shù)據(jù)庫系統(tǒng)。只需
7、要一個(gè)操作方便,功能實(shí)用,能同時(shí)滿足進(jìn)銷存分析管理及需求的系統(tǒng)。我們的目標(biāo)就是在于開發(fā)一個(gè)功能實(shí)用、操作方便,簡單明了的圖書進(jìn)銷存管理系統(tǒng)。 </p><p> 該系統(tǒng)有售書管理模塊、出庫管理模塊、庫存管理模塊、訂書管理模塊、入庫管理模塊和數(shù)據(jù)統(tǒng)計(jì)分析模塊六部分組成,可以完成圖書的進(jìn)貨、出貨、查詢等基本操作,完成階段的銷售情況、財(cái)務(wù)利潤等信息。通過對基本操作的查詢,用戶可以掌握圖書受歡迎情況,并能夠?qū)D書情況進(jìn)
8、行統(tǒng)計(jì),從而適應(yīng)市場的需求進(jìn)行規(guī)劃決策。</p><p><b> 2.3市場調(diào)查</b></p><p> 通過對現(xiàn)在流行的各種進(jìn)銷存軟件的分析,我們發(fā)現(xiàn)市場上的軟件過于繁瑣,操作比較復(fù)雜,而其中軟件的許多功能不被小型企業(yè)所采用,造成軟件冗余量大。圖書進(jìn)銷存管理系統(tǒng)設(shè)計(jì)的總體目標(biāo)是通過對銷售、訂單、庫存的管理,及時(shí)準(zhǔn)確了解銷售、庫存等綜合情況,以便為管理者做出準(zhǔn)
9、確的判斷提供依據(jù)。并通過圖書進(jìn)銷存數(shù)據(jù)的分析,為管理及決策人員提供庫存資金占用情況、圖書庫存情況。</p><p> 圖書進(jìn)銷存管理系統(tǒng)的使用者要求系統(tǒng)具有良好的可靠性和可操作性,它的各種基本的操作容易為管理者所掌握,有較好的完全性,并要求系統(tǒng)具有高效率,易維護(hù),可移植性較好等特點(diǎn),我們據(jù)此展開分析。</p><p><b> 2.4 業(yè)務(wù)流程圖</b></
10、p><p> 業(yè)務(wù)流程圖是一種表明系統(tǒng)內(nèi)各個(gè)單位、人員之間業(yè)務(wù)關(guān)系、作業(yè)順序和管理信息流動(dòng)的流程圖,通過它能夠使分析人員找出業(yè)務(wù)流程中的不合理迂回等。業(yè)務(wù)流程圖的層次簡單,可讀性強(qiáng);圖中采用系統(tǒng)外部實(shí)體、單據(jù)報(bào)表賬目、數(shù)據(jù)流、處理四種符號來表示各項(xiàng)內(nèi)容。具體的相關(guān)符號說明如下:</p><p> 通過對書店的處理內(nèi)容、處理順序、處理細(xì)節(jié)和處理要求等各環(huán)節(jié)的調(diào)查和分析,弄清各個(gè)環(huán)節(jié)所需要的信
11、息內(nèi)容、信息來源、流經(jīng)取向、處理方法、計(jì)算方法、提供信息的時(shí)間和信息表示形態(tài)(報(bào)表、表單、表格、輸入輸出內(nèi)容、屏幕顯示)等,并且把相關(guān)的調(diào)查結(jié)果用“業(yè)務(wù)流程圖”表示出來,如圖2.4.1所示。</p><p><b> 2.5 數(shù)據(jù)流程圖</b></p><p> 在上一節(jié)中使用了業(yè)務(wù)流程圖來描述管理業(yè)務(wù)雖然形象的表達(dá)了信息的流動(dòng)和存儲狀況,但是仍舊沒有完全脫離一些
12、物質(zhì)要素,而只是僅僅得到了一個(gè)現(xiàn)行系統(tǒng)的物理模型。為了用計(jì)算機(jī)對信息進(jìn)行管理,必須舍去物質(zhì),抽象出信息流,詳細(xì)調(diào)查數(shù)據(jù)及數(shù)據(jù)流程。</p><p> 數(shù)據(jù)流程圖是一種能全面地描述信息系統(tǒng)邏輯模型的主要工具,它可以用少數(shù)幾種符號綜合的反映出信息在系統(tǒng)中的流動(dòng)、處理和存儲情況。根據(jù)上面業(yè)務(wù)流程圖的描述,從系統(tǒng)的科學(xué)性、管理的合理性、實(shí)際運(yùn)行的可行性角度出發(fā),自頂向下對系統(tǒng)進(jìn)行分解,導(dǎo)出了圖書管理系統(tǒng)的系統(tǒng)關(guān)聯(lián)圖、系
13、統(tǒng)頂層圖和系統(tǒng)分解圖。</p><p> 數(shù)據(jù)流程圖有外部實(shí)體、處理(數(shù)據(jù)加工)、數(shù)據(jù)存儲、數(shù)據(jù)流四個(gè)部分組成。他們的符號表示如下:</p><p> 2.5.1頂層數(shù)據(jù)流程圖</p><p> 由業(yè)務(wù)流程圖確定系統(tǒng)開發(fā)的外部實(shí)體即系統(tǒng)數(shù)據(jù)的來源與去處,從而確定了整個(gè)系統(tǒng)的外部實(shí)體和數(shù)據(jù)流,把系統(tǒng)作為一個(gè)處理環(huán)節(jié),由此可繪出該圖書進(jìn)銷存系統(tǒng)的頂層數(shù)據(jù)流程圖(頂
14、層DFD圖),如圖2.5.1所示。</p><p> 頂層數(shù)據(jù)流程圖2.5.2數(shù)據(jù)流程圖細(xì)化</p><p> 確定系統(tǒng)的主要處理功能,可以將系統(tǒng)分為售書管理、出庫管理、庫存管理、訂書管理、入庫管理和數(shù)據(jù)統(tǒng)計(jì)分析六部分。再確定各個(gè)輸入和輸出的數(shù)據(jù)流的以及與之相關(guān)的數(shù)據(jù)結(jié)構(gòu),為各個(gè)數(shù)據(jù)流、加工環(huán)節(jié)命名并編碼,從而得到圖書進(jìn)銷存系統(tǒng)的第一層數(shù)據(jù)流程圖,如圖2.5.2所示。</p>
15、;<p><b> 第一層數(shù)據(jù)流程圖</b></p><p> 2.5.3系統(tǒng)流程圖分解</p><p> 將第一層流程圖分解可得到系統(tǒng)分解圖。其中某些數(shù)據(jù)項(xiàng)處理可分解為多個(gè)處理過程。在本系統(tǒng)中有售書管理模塊、盤存管理模塊、訂書管理模塊、進(jìn)貨管理模塊。每一部分都可分解為第二層流程圖。具體分解情況如下:</p><p><
16、;b> 1) 進(jìn)貨管理模塊</b></p><p><b> P1</b></p><p><b> 2) 盤存管理模塊</b></p><p><b> P2</b></p><p><b> 3) 售書管理模塊</b><
17、;/p><p><b> P3</b></p><p><b> 2.6數(shù)據(jù)字典</b></p><p> 數(shù)據(jù)流程圖表達(dá)了數(shù)據(jù)和處理的關(guān)系,數(shù)據(jù)字典則是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典在數(shù)據(jù)庫設(shè)計(jì)中占有很重要的地位。</p><p> 數(shù)據(jù)字典
18、通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程五個(gè)部分。其中數(shù)據(jù)項(xiàng)是數(shù)據(jù)的最小組成單位,若干個(gè)數(shù)據(jù)項(xiàng)可以組成一個(gè)數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)字典通過對數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲的邏輯內(nèi)容。具體數(shù)據(jù)字典內(nèi)容見附錄1。</p><p><b> 3 概念結(jié)構(gòu)設(shè)計(jì)</b></p><p> 在進(jìn)行數(shù)據(jù)庫設(shè)計(jì)時(shí),是先將現(xiàn)實(shí)世界中的客觀對象抽象為不依賴任何具體機(jī)器
19、的信息系統(tǒng),數(shù)據(jù)庫概念設(shè)計(jì)的目標(biāo)就是要產(chǎn)生反映企業(yè)組織信息需求的數(shù)據(jù)庫概念結(jié)構(gòu),即概念模型,而后再把概念模型轉(zhuǎn)化為具體機(jī)器上計(jì)算機(jī)信息管理系統(tǒng)支持的相關(guān)模型。概念模式是獨(dú)立與數(shù)據(jù)庫邏輯結(jié)構(gòu),獨(dú)立與支持?jǐn)?shù)據(jù)庫的DBMS,不依賴于計(jì)算機(jī)系統(tǒng)的。概念模型是表達(dá)概念設(shè)計(jì)結(jié)果的工具。它應(yīng)該能夠真實(shí)、充分地反映現(xiàn)實(shí)世界中事物和事物之間的聯(lián)系;應(yīng)該簡潔、明晰、獨(dú)立于機(jī)器,容易理解,方便數(shù)據(jù)庫設(shè)計(jì)人員和應(yīng)用人員進(jìn)行交流;應(yīng)該易于變動(dòng),便于修改;應(yīng)該很容
20、易向關(guān)系、層次或網(wǎng)狀等各種數(shù)據(jù)模型轉(zhuǎn)變,方便地導(dǎo)出與DBMS有關(guān)的邏輯模型。從而使概念模型成為現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)過渡的中間層次。</p><p> 概念模型有很多模型,其中最常用的方法之一是“實(shí)體—聯(lián)系模型”(entity relationship model),即使用E-R圖來描述某一組織的概念模型。</p><p> 這個(gè)階段的目標(biāo)即抽象出本系統(tǒng)的概念模型,為下一步做準(zhǔn)備。該
21、階段的任務(wù)為采用自下而上的方法抽象出各子模塊的E-R圖,再通過合并的方法做到各子系統(tǒng)實(shí)體、屬性、聯(lián)系統(tǒng)一,最終形成系統(tǒng)的全局E-R圖。</p><p><b> 3.1概念模型設(shè)計(jì)</b></p><p> E-R圖是直觀表示概念模型的工具,在圖中有四個(gè)基本成分:</p><p> 1) 矩 形 框:表示實(shí)體類型(考慮問題的對象);<
22、;/p><p> 2) 菱 形 框:表示聯(lián)系類型(實(shí)體間的聯(lián)系);</p><p> 3) 橢圓形框:表示實(shí)體類型和聯(lián)系類型的屬性;</p><p> 4) 直 線:聯(lián)系類型與涉及的實(shí)體類型之間以直線連接,并在直線部標(biāo)上聯(lián)系的種類(1:1,1:N,M:N)。</p><p><b> 具體圖示如下:</b></
23、p><p><b> 3.3 邏輯設(shè)計(jì)</b></p><p> 邏輯結(jié)構(gòu)設(shè)計(jì)就是把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型符合的邏輯結(jié)構(gòu)。本次采用的DBMS為SQL SERVER 2000。根據(jù)SQL SERVER 2000的特點(diǎn),數(shù)據(jù)模型為關(guān)系數(shù)據(jù)模型。</p><p> 3.3.1 概念設(shè)計(jì)的目標(biāo)與任務(wù)
24、</p><p> 概念設(shè)計(jì)階段的主要任務(wù)有:</p><p> ?。?)將E-R模型轉(zhuǎn)換為關(guān)系模型,確定關(guān)系模式的屬性和碼。</p><p> ?。?)利用范式理論對現(xiàn)有數(shù)據(jù)模型進(jìn)行優(yōu)化。</p><p> ?。?)完成數(shù)據(jù)庫模式定義描述,包括各模式的邏輯結(jié)構(gòu)定義、關(guān)系的完整性和安全性等內(nèi)容。</p><p>
25、(4)設(shè)計(jì)用戶子模式—視圖設(shè)計(jì),完成適合不同用戶的子模式設(shè)計(jì)。</p><p> 3.3.2 概念設(shè)計(jì)</p><p> 一個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式。實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼。</p><p> 1.將E-R模型轉(zhuǎn)換為關(guān)系模型</p><p><b> 轉(zhuǎn)換原則:</b></p>
26、;<p> 一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系,也可以與任意一段對應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)化為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各個(gè)實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,每個(gè)實(shí)體的碼均是該關(guān)系的候選碼。如果與某一個(gè)實(shí)體對應(yīng)的關(guān)系合并,則需要在該關(guān)系模式的屬性中加入另一個(gè)關(guān)系的主碼和聯(lián)系本身的屬性。</p><p> 一個(gè)m:n的聯(lián)系可以轉(zhuǎn)化為一個(gè)單獨(dú)的關(guān)系模式,這個(gè)單獨(dú)的關(guān)系模式的
27、主碼是兩端實(shí)體的碼,再加上聯(lián)系的屬性。</p><p> 一個(gè)1:n聯(lián)系可以轉(zhuǎn)化為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端的關(guān)系模式合并作如果與n端的關(guān)系模式合并,在n端的關(guān)系模式中加上另一端關(guān)系的碼和聯(lián)系屬性。</p><p> 根據(jù)以上規(guī)則,本系統(tǒng)的E-R模型向關(guān)系模型轉(zhuǎn)換如下(其中關(guān)系的碼用下劃線標(biāo)出):</p><p> 購書單(購書單編號,圖書名稱,圖書數(shù)量
28、,購書日期,購書費(fèi)用)</p><p> 購書(購書單編號,圖書編號,圖書名稱,購書數(shù)量,購書費(fèi)用)</p><p> 退書單(退書單編號,圖書名稱,圖書數(shù)量)</p><p> 退書(退書單編號,圖書編號,圖書名稱,退書數(shù)量)</p><p> 圖書(圖書編號,圖書名稱,供應(yīng)商,單價(jià),作者)</p><p>
29、 供應(yīng)商(供應(yīng)商號,供應(yīng)商名稱,地址,郵編,電話)</p><p> 供應(yīng)(供應(yīng)商編號,圖書編號,供應(yīng)數(shù)量)</p><p> 倉庫管理員(倉庫管理員編號,倉庫管理員姓名,密碼)</p><p> 倉庫(編號,面積) </p><p> 存儲(倉庫編號,圖書編號,入庫日期,庫存數(shù)量)</p><p> 2.
30、 數(shù)據(jù)模型的優(yōu)化</p><p> (1)原則:一事一地;</p><p> (2)方法:垂直分解法;</p><p><b> (3)步驟:</b></p><p> a 根據(jù)語義要求,觀察各關(guān)系中的屬性是否可分解,從而判斷是否滿足1NF;</p><p> b分析主屬性對非主屬性是否
31、存在部分函數(shù)依賴,從而判斷是否滿足2NF;</p><p> c分析主屬性對非主屬性是否存在傳遞函數(shù)依賴,從而判斷是否滿足3NF;</p><p> d分析是否無損分解,是否保持函數(shù)依賴關(guān)系;</p><p><b> 分析過程:</b></p><p><b> 3.模式定義</b><
32、;/p><p> 關(guān)系模式的定義包括各模式的邏輯結(jié)構(gòu)定義、關(guān)系的完整性和安全性等內(nèi)容。</p><p> 表2-5 關(guān)系模式匯總</p><p> 3.4用戶子模式——視圖設(shè)計(jì)</p><p> 對于購書單這一關(guān)系模式,由于顧客和管理者都需要知道其中的各個(gè)屬性,故只需要建立一個(gè)視圖:</p><p> 購書單(
33、圖書編號,購書單編號,購書數(shù)量,購書日期)</p><p> 購書者可以在購書小票中看到其中的各個(gè)屬性,而管理者則可以查詢每個(gè)購書單所購圖書的詳細(xì)信息以及購書日期、購書數(shù)量等。</p><p> 在圖書關(guān)系上,可以建立兩個(gè)視圖:</p><p> 為一般用戶建立的視圖:</p><p> 圖書1(名稱,作者,出版社,單價(jià),出版日期,備
34、注)</p><p> 為管理者建立的視圖:</p><p> 圖書(圖書編號,供應(yīng)商編號,名稱,作者,出版社,單價(jià),出版日期,所存?zhèn)}庫號,備注)</p><p> 用戶視圖中只包含允許用戶查詢的屬性,而管理者則可以查詢其所有屬性,重要的是供應(yīng)商和所存?zhèn)}庫號。</p><p> 類似地可以得到各個(gè)關(guān)系模式的基于不同對象的視圖,如表5.
35、3.1所示。</p><p> 表4.3.1 視圖分類</p><p> 3.4.1功能模塊圖</p><p> 圖書進(jìn)銷存系統(tǒng)功能模塊圖</p><p><b> 5 物理結(jié)構(gòu)設(shè)計(jì)</b></p><p> 數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于給定的計(jì)算
36、機(jī)系統(tǒng)。為一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用要求的物理結(jié)構(gòu)的過程,就是數(shù)據(jù)庫的物理設(shè)計(jì)。</p><p><b> 目標(biāo)與任務(wù):</b></p><p> 本階段要完成的任務(wù)是為關(guān)系模式選擇取存方法和設(shè)計(jì)關(guān)系索引等數(shù)據(jù)庫文件的物理存儲結(jié)構(gòu)</p><p><b> 5.1 數(shù)據(jù)存取</b></p>
37、<p> 這一階段的任務(wù)是建立索引。建立索引的目的是為了更高速度的訪問對應(yīng)的屬性列或是屬性組??梢栽谝粋€(gè)基本表上建立索引,以提供多種存儲路徑,加快訪問速度。</p><p> 5.1.1 建立索引的原則</p><p> 建立索引一般有以下三個(gè)原則:</p><p> (1) 如果一個(gè)(或一組)屬性經(jīng)常在查詢條件中出現(xiàn),則考慮在這個(gè)(或這組)屬性
38、上建立索引。</p><p> (2) 如果一個(gè)經(jīng)常作為最大值和最小值等聚集函數(shù)的參數(shù),則考慮在這個(gè)屬性上建立索引。</p><p> (3) 如果一個(gè)(或一組)屬性經(jīng)常在連接操作的連接條件中出現(xiàn),則考慮在這個(gè)(或這組)屬性上建立索引。</p><p> 5.1.2 建立索引</p><p> 根據(jù)系統(tǒng)和用戶的需要,由于圖書編號、購書
39、單編號、供應(yīng)商編號和倉庫編號等幾個(gè)屬性查詢操作比較頻繁,故需對其所在的表建立唯一索引,如表5.1.2-01所示。</p><p> 表5.1.2-01 唯一索引表</p><p> 而購書數(shù)量、入庫日期、出庫日期、進(jìn)購圖書數(shù)量、圖書進(jìn)購日期、購書日期、圖書出版社等屬性是經(jīng)常按順序排列查詢,故需建立聚簇索引,如表5.1.2-02所示。</p><p> 表5.1
40、.2-02 聚簇索引表</p><p><b> 5.2 程序流程圖</b></p><p> 管理信息系統(tǒng)處理方式的合理選擇,是一個(gè)處理過程的設(shè)計(jì)問題。選擇處理方式實(shí)際上就是根據(jù)系統(tǒng)的任務(wù)、目標(biāo)和環(huán)境條件,合理選擇信息活動(dòng)的形式及其具體方法。</p><p> 在繪制流程圖時(shí)使用的符號如下:</p><p>
41、由此可得本系統(tǒng)的程序流程圖,如圖5.2.1所示。</p><p> 圖5.2.1 系統(tǒng)程序流程圖</p><p><b> 6 數(shù)據(jù)庫實(shí)施</b></p><p> 在上一節(jié)數(shù)據(jù)庫的物理設(shè)計(jì)之后,就要用RDBMS提供的數(shù)據(jù)定義和其他實(shí)用程序?qū)?shù)據(jù)庫邏輯設(shè)計(jì)和物理設(shè)計(jì)結(jié)果嚴(yán)格描述出來,成為DBMS可以接受的源代碼,再經(jīng)過調(diào)試產(chǎn)生目標(biāo)模式。然
42、后就可以組織數(shù)據(jù)入庫了,這就是數(shù)據(jù)庫實(shí)施階段。</p><p> 數(shù)據(jù)庫實(shí)施階段的任務(wù)是完成數(shù)據(jù)的載入及應(yīng)用程序的編碼和調(diào)試。</p><p> 6.1 數(shù)據(jù)庫的實(shí)現(xiàn)</p><p><b> 1)建立數(shù)據(jù)庫</b></p><p><b> 附錄</b></p><p&
43、gt;<b> 附錄1</b></p><p><b> 1.1數(shù)據(jù)項(xiàng)</b></p><p> 表1.1.1圖書信息表</p><p> 表1.1.2客戶購書表</p><p> 表1.1.3 庫存圖書表</p><p> 表1.1.4 進(jìn)貨表</p>
44、;<p> 表1.1.5倉庫管理員信息表</p><p> 表1.1.6 供應(yīng)商信息表</p><p> 表1.1.7倉庫信息表</p><p><b> 1.2數(shù)據(jù)結(jié)構(gòu)</b></p><p><b> 1.3數(shù)據(jù)流</b></p><p><
45、b> 1.4外部實(shí)體</b></p><p><b> 1.5處理邏輯</b></p><p><b> 1.6數(shù)據(jù)存儲</b></p><p> 附錄2關(guān)系模式的說明:</p><p> 1-1購書單關(guān)系的說明</p><p> 1-2供應(yīng)關(guān)系
46、的說明</p><p> 1-3供應(yīng)商關(guān)系的說明</p><p> 1-4倉庫管理員關(guān)系的說明</p><p> 1-5倉庫關(guān)系的說明</p><p> 1-6存儲關(guān)系的說明</p><p> 1-7圖書關(guān)系的說明</p><p><b> 存儲過程的測試</b>
47、;</p><p><b> 查詢存儲過程</b></p><p><b> 查詢管理員信息</b></p><p> 根據(jù)作者查詢圖書信息</p><p> 根據(jù)日期查詢銷售信息</p><p> 根據(jù)入庫日期查詢倉存儲信息</p><p>
48、; 根據(jù)倉庫管理員姓名查詢倉庫圖書信息</p><p> 根據(jù)圖書查詢供應(yīng)商信息</p><p> 存儲功能插入功能的驗(yàn)證</p><p> 存儲功能刪除功能的驗(yàn)證</p><p> 存儲功能更新功能的驗(yàn)證</p><p><b> 觸發(fā)器功能的驗(yàn)證</b></p>&l
49、t;p> 進(jìn)貨時(shí)增加貨物的庫存量</p><p> 銷售貨物時(shí)減少貨物的庫存量</p><p><b> SQL語句</b></p><p><b> --建立數(shù)據(jù)庫</b></p><p> create database BookStore</p><p>
50、;<b> --創(chuàng)建購書單表</b></p><p> create table ShopList</p><p> (BuyID char(9) primary key,</p><p> Bkname char(8) not null,</p><p> Bknum int,</p><
51、p> BuyDay DateTime,</p><p> BuyMoney Float</p><p><b> );</b></p><p><b> --創(chuàng)建供應(yīng)表</b></p><p> create table Supply</p><p> (S
52、upID char(8) primary key,</p><p> BkID char(10),</p><p> SID char(10),</p><p> InTime DateTime,</p><p><b> InNum int</b></p><p><b>
53、);</b></p><p><b> --創(chuàng)建圖書表</b></p><p> create table Book</p><p> (BkID char(8) primary key,</p><p> Bkname char(8) not null,</p><p>
54、SID char(10),</p><p> Bkwriter char(12),</p><p> Bkprice Float,</p><p> PublishDate DateTime</p><p><b> );</b></p><p><b> --創(chuàng)建供應(yīng)商表&l
55、t;/b></p><p> create table Supplier</p><p> (SID char(10) primary key,</p><p> Sname char(8),</p><p> Saddr char(8),</p><p> Stel char(12),</p&g
56、t;<p> Spost char(8)</p><p><b> );</b></p><p> --創(chuàng)建倉庫管理員表</p><p> create table Adm</p><p> (AdID char(8) primary key,</p><p> AdNa
57、me char(5),</p><p> AdPaswd char(6)</p><p><b> );</b></p><p><b> --創(chuàng)建倉庫表</b></p><p> create table WareHouse</p><p> (WID char(
58、3) primary key,</p><p> Warea int,</p><p> AdID char(8)</p><p><b> );</b></p><p><b> --創(chuàng)建存儲表</b></p><p> create table Store<
59、;/p><p> (WID char(3),</p><p> BkID char(8),</p><p> InTime DateTime,</p><p><b> Snum int,</b></p><p> OutTime DateTime,</p><p>
60、 primary key(WID,BkID),</p><p> foreign key(WID)references WareHouse(WID),</p><p> foreign key(BkID)references Book(BkID)</p><p><b> );</b></p><p><b
61、> --創(chuàng)建退書單表</b></p><p> create table ReturnList</p><p> (retnID char(8) primary key,</p><p> Bkname char(8) not null,</p><p> retnNum int</p><p&
62、gt;<b> );</b></p><p><b> --創(chuàng)建退書表</b></p><p> create table ReturnBook</p><p> (retnID char(8),</p><p> BkID char(8),</p><p> B
63、kname char(8),</p><p> retnNum int,</p><p> primary key(retnID,BkID),</p><p> foreign key(retnID)references ReturnList(retnID),</p><p> foreign key(BkID)references
64、Book(BkID)</p><p><b> );</b></p><p><b> --創(chuàng)建購書表</b></p><p> create table BuyBook</p><p> (BuyID char(9),</p><p> BkID char(8),
65、</p><p> Bkname char(8),</p><p> Bknum int,</p><p> BuyMoney Float,</p><p> primary key(BuyID,BkID),</p><p> foreign key(BuyID)references ShopList(Buy
66、ID),</p><p> foreign key(BkID)references Book(BkID)</p><p><b> );</b></p><p><b> --建立視圖</b></p><p><b> --建立購書單視圖</b></p>
67、<p> create view ShopList_view</p><p><b> as</b></p><p> select BuyID,Bkname,Bknum,BuyDay</p><p> from ShopList</p><p> --建立供顧客查詢圖書信息的視圖</p>
68、<p> create view BuyBook_view</p><p><b> as</b></p><p> select Bkname,Bkwriter,Bkprice,SID</p><p><b> from Book</b></p><p> --建立供管理者
69、查詢圖書信息的視圖</p><p> create view AdmBook_view</p><p><b> as</b></p><p> select Book.BkID,SID,Bkname,Bkwriter,Bkprice,WID</p><p> from Book,Store</p>
70、<p> where Book.BkID=Store.BkID</p><p> --建立查詢供應(yīng)商信息的視圖</p><p> create view AdmS_view</p><p><b> as</b></p><p> select SID,Sname,Saddr,Stel,Spost&
71、lt;/p><p> from Supplier</p><p> --建立查詢倉庫信息的視圖</p><p> create view WareHos_view</p><p><b> as</b></p><p> select WID,Warea</p><p&g
72、t; from WareHouse</p><p> --建立查詢倉庫管理員的視圖</p><p> create view Adm_view</p><p><b> as</b></p><p> select WID,Adname</p><p> from Adm,WareHo
73、use</p><p> where Adm.AdID=WareHouse.AdID</p><p> --建立查詢庫存情況的視圖</p><p> create view Store_view</p><p><b> as</b></p><p> select WID,InTime
74、,Snum</p><p> from Store</p><p> --建立查詢供應(yīng)關(guān)系的視圖</p><p> create view Sup_view</p><p><b> as</b></p><p> select SID,InNum</p><p>
75、; from Supply</p><p><b> --建立索引</b></p><p> create unique index BookInfo1 on Book(BkID);</p><p> create unique index CBuyInfo1 on ShopList(BuyID);</p><p&g
76、t; create unique index SupInfo on Supplier(SID);</p><p> create unique index WareInfo1 on WareHouse(WID);</p><p> --create clustered index CBuyInfo2 on ShopList(BkNum,BuyDay);</p><
77、p> --create clustered index WareBInfo2 on Store(InTime,OutTime);</p><p> --create clustered index BuyInfo on Supply(InNum,InTime);</p><p><b> 建立查詢的存儲過程</b></p><p>
78、 create procedure p1_query_Adm</p><p> @AdID char(8)</p><p><b> as</b></p><p><b> select *</b></p><p><b> from Adm</b></p>
79、;<p> where AdID=@AdID</p><p> create procedure p2_query_Book</p><p> @Bkwriter char(12)</p><p><b> as</b></p><p><b> select *</b>&l
80、t;/p><p><b> from Book</b></p><p> where Bkwriter=@Bkwriter</p><p> create procedure p3_query_ShopList</p><p> @BuyDay datetime</p><p><b&g
81、t; as </b></p><p><b> select *</b></p><p> from ShopList</p><p> where BuyDay=@BuyDay</p><p> create procedure p4_query_Store</p><p>
82、; @InTime datetime</p><p><b> as</b></p><p><b> select *</b></p><p> from Store</p><p> where InTime=@InTime</p><p> --根據(jù)倉庫管理
83、員姓名查詢倉庫圖書信息</p><p> create procedure p5_query_Ad_Book</p><p> @AdName char(5)</p><p><b> as</b></p><p> select AdName,Book.BkID,Book.Bkname,Bkwriter,Sto
84、re.Snum</p><p> from Adm,Book,Store,WareHouse</p><p> where WareHouse.WID=Store.WID and Book.BkID=Store.BkID and AdName=@AdName</p><p> create procedure p6_query_Supplier</p&g
85、t;<p> @Bkname char(8)</p><p><b> as</b></p><p> select Supplier.SID,Sname,Saddr,Stel</p><p> from Supplier,Book</p><p> where Book.SID=Supplier
86、.SID and Book.Bkname=@Bkname</p><p> 建立具有插入功能的存儲過程</p><p> create procedure ShopList_insert</p><p> @BuyID char(9),</p><p> @Bkname char(8),</p><p> @
87、Bknum int,</p><p> @BuyDay DateTime,</p><p> @BuyMoney Float</p><p><b> as</b></p><p> insert into ShopList</p><p> values(@BuyID,@Bkname,
88、@Bknum,@BuyDay,@BuyMoney);</p><p> create procedure Supply_insert</p><p> @SupID char(8) ,</p><p> @BkID char(10),</p><p> @SID char(10),</p><p> @InT
89、ime DateTime,</p><p> @InNum int</p><p><b> as</b></p><p> insert into Supply</p><p> values(@SupID,@BkID,@SID,@InTime,@InNum);</p><p> 建立
90、具有刪除功能的存儲過程</p><p> create procedure delete_Supplier</p><p> @Sname char(8)</p><p><b> as</b></p><p><b> delete </b></p><p> f
91、rom Supplier</p><p> where Sname=@Sname</p><p> 建立具有更新功能的存儲過程</p><p> create procedure update_Adm</p><p> @AdID char(8),@AdName char(5)</p><p><b>
92、; as</b></p><p> update Adm</p><p> set AdName=@AdName</p><p> where AdID=@AdID</p><p><b> 觸發(fā)器的建立</b></p><p> 進(jìn)貨后在庫存表中更新記錄的觸發(fā)器</
93、p><p> create trigger tr_supply_Store</p><p> on supply after insert</p><p><b> as</b></p><p> declare @InNum int,@BkID char(8)</p><p> selec
94、t @InNum=InNum,@BkID=BkID</p><p> from inserted</p><p> update Store</p><p> set Snum=Snum+@InNum</p><p> where BkId=@BkID</p><p> 銷售圖書后在存儲表中更新記錄的觸發(fā)器&
95、lt;/p><p> Create trigger tr_ShopList_Store</p><p> on ShopList after insert</p><p><b> as</b></p><p> declare @Bknum int ,@Bkname char(8),@BkID char(8)<
96、;/p><p> select @Bknum=inserted.Bknum ,@BkID=Book.BkID</p><p> from inserted,Book</p><p> where Book.Bkname=inserted.Bkname</p><p> update Store</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 書店管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)(書店租賃管理系統(tǒng))
- 網(wǎng)上書店管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告(書店租賃管理系統(tǒng))
- 數(shù)據(jù)庫技術(shù)及應(yīng)用課程設(shè)計(jì)--書店管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--書店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告--書店租賃系統(tǒng)
- 網(wǎng)上書店管理信息系統(tǒng)--數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫設(shè)計(jì)—公司管理系統(tǒng)
- 網(wǎng)上書店管理信息系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 網(wǎng)上書店數(shù)據(jù)庫課程設(shè)計(jì)報(bào)告
- 網(wǎng)上書店管理信息系統(tǒng)_數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)-某書店圖書進(jìn)貨銷售系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)---機(jī)房管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---圖書管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--工資管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)-酒店管理系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---教室管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--bbs系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)論文---汽車銷售管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
評論
0/150
提交評論