版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 1 引言</b></p><p> 計算機技術作為現(xiàn)代科學技術的基礎和核心,已經(jīng)而且將繼續(xù)對人類文明社會的進步與發(fā)展產(chǎn)生深刻影響。在我們生活的21世紀里計算機技術已經(jīng)在各行各業(yè)中發(fā)揮著不可替代的作用。當前越來越多的商業(yè)、企事業(yè)單位已經(jīng)將計算機技術應用于日常的管理工作??茖W的運用計算機技術進行管理工作不僅可以使管理工作規(guī)范化、系統(tǒng)化、自動化而且可以節(jié)省相當?shù)娜肆?/p>
2、、物力。它能夠使用戶的管理工作走上良性運轉(zhuǎn)軌道,從而為其快速發(fā)展奠定基礎。因此各單位對與本行業(yè)相關管理軟件的需求也十分迫切。</p><p> 管理信息系統(tǒng)(MIS, Management Information System)是一個由人和計算機等組成的能夠提供信息以支持一個組織機構內(nèi)部的作業(yè),管理、分析和決策職能的系統(tǒng)。進、銷、存的管理是企業(yè)自身管理信息系統(tǒng)的重要組成部分。</p><p&
3、gt; 1.1 本論文的目標與任務</p><p> 本文以書店為例,對書店圖書的進、銷、存管理信息系統(tǒng)進行了分析和設計,重點是對庫存子系統(tǒng)進行了討論。庫存管理是商場運營的基礎,它將采購管理和銷售管理鏈接起來共同組成一個完整的進、銷、存管理系統(tǒng)。該系統(tǒng)可以幫助圖書倉庫管理人員對庫存商品進行詳盡、全面地控制和管理,提供的各種庫存報表和庫存分析可以為管理者的決策提供依據(jù),從而實現(xiàn)降低庫存和減少資金占用,避免圖書積
4、壓或短缺,保證圖書經(jīng)營的正常進行。</p><p><b> 2 需求分析</b></p><p> 需求分析的定義是:在管理信息系統(tǒng)開發(fā)生命周期中系統(tǒng)詳細調(diào)查階段的各項活動和方法。</p><p> 需求分析的目標是:按照系統(tǒng)規(guī)劃原則在業(yè)務系統(tǒng)項目的范圍內(nèi),具體明確系統(tǒng)開發(fā)的目標和用戶的信息要求。通過對現(xiàn)行系統(tǒng)的管理水平、原始數(shù)據(jù)的精確
5、程度、規(guī)章制度是否齊全和切實可行、管理人員對開發(fā)新系統(tǒng)的需求等內(nèi)容的詳細調(diào)查,從而獲得軟件開發(fā)的基礎,確定總體設計的限制條件,確認軟件測試的具體要求,定義詳細的功能模塊,以求達到協(xié)助系統(tǒng)開發(fā)的根本目的。</p><p> 在需求分析中,主要采用業(yè)務流程圖、數(shù)據(jù)流程圖、數(shù)據(jù)字典等工具進行描述和分析。</p><p><b> 2.1目標</b></p>
6、<p> 需求分析簡單地說就是分析用戶的要求。需求分析是設計數(shù)據(jù)庫的起點,需求分析的結(jié)果是否準確地反映了用戶的實際要求,將直接影響到后面各個階段原設計,并影響到設計結(jié)果是否合理和實用。</p><p><b> 2.2 任務</b></p><p> 目前市面上流行的進銷存管理系統(tǒng)不少。但是,對于書店圖書的進銷存系統(tǒng)來說,不需要大型的數(shù)據(jù)庫系統(tǒng)。只需
7、要一個操作方便,功能實用,能同時滿足進銷存分析管理及需求的系統(tǒng)。我們的目標就是在于開發(fā)一個功能實用、操作方便,簡單明了的圖書進銷存管理系統(tǒng)。 </p><p> 該系統(tǒng)有售書管理模塊、出庫管理模塊、庫存管理模塊、訂書管理模塊、入庫管理模塊和數(shù)據(jù)統(tǒng)計分析模塊六部分組成,可以完成圖書的進貨、出貨、查詢等基本操作,完成階段的銷售情況、財務利潤等信息。通過對基本操作的查詢,用戶可以掌握圖書受歡迎情況,并能夠?qū)D書情況進
8、行統(tǒng)計,從而適應市場的需求進行規(guī)劃決策。</p><p><b> 2.3市場調(diào)查</b></p><p> 通過對現(xiàn)在流行的各種進銷存軟件的分析,我們發(fā)現(xiàn)市場上的軟件過于繁瑣,操作比較復雜,而其中軟件的許多功能不被小型企業(yè)所采用,造成軟件冗余量大。圖書進銷存管理系統(tǒng)設計的總體目標是通過對銷售、訂單、庫存的管理,及時準確了解銷售、庫存等綜合情況,以便為管理者做出準
9、確的判斷提供依據(jù)。并通過圖書進銷存數(shù)據(jù)的分析,為管理及決策人員提供庫存資金占用情況、圖書庫存情況。</p><p> 圖書進銷存管理系統(tǒng)的使用者要求系統(tǒng)具有良好的可靠性和可操作性,它的各種基本的操作容易為管理者所掌握,有較好的完全性,并要求系統(tǒng)具有高效率,易維護,可移植性較好等特點,我們據(jù)此展開分析。</p><p><b> 2.4 業(yè)務流程圖</b></
10、p><p> 業(yè)務流程圖是一種表明系統(tǒng)內(nèi)各個單位、人員之間業(yè)務關系、作業(yè)順序和管理信息流動的流程圖,通過它能夠使分析人員找出業(yè)務流程中的不合理迂回等。業(yè)務流程圖的層次簡單,可讀性強;圖中采用系統(tǒng)外部實體、單據(jù)報表賬目、數(shù)據(jù)流、處理四種符號來表示各項內(nèi)容。具體的相關符號說明如下:</p><p> 通過對書店的處理內(nèi)容、處理順序、處理細節(jié)和處理要求等各環(huán)節(jié)的調(diào)查和分析,弄清各個環(huán)節(jié)所需要的信
11、息內(nèi)容、信息來源、流經(jīng)取向、處理方法、計算方法、提供信息的時間和信息表示形態(tài)(報表、表單、表格、輸入輸出內(nèi)容、屏幕顯示)等,并且把相關的調(diào)查結(jié)果用“業(yè)務流程圖”表示出來,如圖2.4.1所示。</p><p><b> 2.5 數(shù)據(jù)流程圖</b></p><p> 在上一節(jié)中使用了業(yè)務流程圖來描述管理業(yè)務雖然形象的表達了信息的流動和存儲狀況,但是仍舊沒有完全脫離一些
12、物質(zhì)要素,而只是僅僅得到了一個現(xiàn)行系統(tǒng)的物理模型。為了用計算機對信息進行管理,必須舍去物質(zhì),抽象出信息流,詳細調(diào)查數(shù)據(jù)及數(shù)據(jù)流程。</p><p> 數(shù)據(jù)流程圖是一種能全面地描述信息系統(tǒng)邏輯模型的主要工具,它可以用少數(shù)幾種符號綜合的反映出信息在系統(tǒng)中的流動、處理和存儲情況。根據(jù)上面業(yè)務流程圖的描述,從系統(tǒng)的科學性、管理的合理性、實際運行的可行性角度出發(fā),自頂向下對系統(tǒng)進行分解,導出了圖書管理系統(tǒng)的系統(tǒng)關聯(lián)圖、系
13、統(tǒng)頂層圖和系統(tǒng)分解圖。</p><p> 數(shù)據(jù)流程圖有外部實體、處理(數(shù)據(jù)加工)、數(shù)據(jù)存儲、數(shù)據(jù)流四個部分組成。他們的符號表示如下:</p><p> 2.5.1頂層數(shù)據(jù)流程圖</p><p> 由業(yè)務流程圖確定系統(tǒng)開發(fā)的外部實體即系統(tǒng)數(shù)據(jù)的來源與去處,從而確定了整個系統(tǒng)的外部實體和數(shù)據(jù)流,把系統(tǒng)作為一個處理環(huán)節(jié),由此可繪出該圖書進銷存系統(tǒng)的頂層數(shù)據(jù)流程圖(頂
14、層DFD圖),如圖2.5.1所示。</p><p> 頂層數(shù)據(jù)流程圖2.5.2數(shù)據(jù)流程圖細化</p><p> 確定系統(tǒng)的主要處理功能,可以將系統(tǒng)分為售書管理、出庫管理、庫存管理、訂書管理、入庫管理和數(shù)據(jù)統(tǒng)計分析六部分。再確定各個輸入和輸出的數(shù)據(jù)流的以及與之相關的數(shù)據(jù)結(jié)構,為各個數(shù)據(jù)流、加工環(huán)節(jié)命名并編碼,從而得到圖書進銷存系統(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ù)項處理可分解為多個處理過程。在本系統(tǒng)中有售書管理模塊、盤存管理模塊、訂書管理模塊、進貨管理模塊。每一部分都可分解為第二層流程圖。具體分解情況如下:</p><p><
16、;b> 1) 進貨管理模塊</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ù)流程圖表達了數(shù)據(jù)和處理的關系,數(shù)據(jù)字典則是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進行詳細的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典在數(shù)據(jù)庫設計中占有很重要的地位。</p><p> 數(shù)據(jù)字典
18、通常包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程五個部分。其中數(shù)據(jù)項是數(shù)據(jù)的最小組成單位,若干個數(shù)據(jù)項可以組成一個數(shù)據(jù)結(jié)構,數(shù)據(jù)字典通過對數(shù)據(jù)項和數(shù)據(jù)結(jié)構的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲的邏輯內(nèi)容。具體數(shù)據(jù)字典內(nèi)容見附錄1。</p><p><b> 3 概念結(jié)構設計</b></p><p> 在進行數(shù)據(jù)庫設計時,是先將現(xiàn)實世界中的客觀對象抽象為不依賴任何具體機器
19、的信息系統(tǒng),數(shù)據(jù)庫概念設計的目標就是要產(chǎn)生反映企業(yè)組織信息需求的數(shù)據(jù)庫概念結(jié)構,即概念模型,而后再把概念模型轉(zhuǎn)化為具體機器上計算機信息管理系統(tǒng)支持的相關模型。概念模式是獨立與數(shù)據(jù)庫邏輯結(jié)構,獨立與支持數(shù)據(jù)庫的DBMS,不依賴于計算機系統(tǒng)的。概念模型是表達概念設計結(jié)果的工具。它應該能夠真實、充分地反映現(xiàn)實世界中事物和事物之間的聯(lián)系;應該簡潔、明晰、獨立于機器,容易理解,方便數(shù)據(jù)庫設計人員和應用人員進行交流;應該易于變動,便于修改;應該很容
20、易向關系、層次或網(wǎng)狀等各種數(shù)據(jù)模型轉(zhuǎn)變,方便地導出與DBMS有關的邏輯模型。從而使概念模型成為現(xiàn)實世界到機器世界的一個過渡的中間層次。</p><p> 概念模型有很多模型,其中最常用的方法之一是“實體—聯(lián)系模型”(entity relationship model),即使用E-R圖來描述某一組織的概念模型。</p><p> 這個階段的目標即抽象出本系統(tǒng)的概念模型,為下一步做準備。該
21、階段的任務為采用自下而上的方法抽象出各子模塊的E-R圖,再通過合并的方法做到各子系統(tǒng)實體、屬性、聯(lián)系統(tǒng)一,最終形成系統(tǒng)的全局E-R圖。</p><p><b> 3.1概念模型設計</b></p><p> E-R圖是直觀表示概念模型的工具,在圖中有四個基本成分:</p><p> 1) 矩 形 框:表示實體類型(考慮問題的對象);<
22、;/p><p> 2) 菱 形 框:表示聯(lián)系類型(實體間的聯(lián)系);</p><p> 3) 橢圓形框:表示實體類型和聯(lián)系類型的屬性;</p><p> 4) 直 線:聯(lián)系類型與涉及的實體類型之間以直線連接,并在直線部標上聯(lián)系的種類(1:1,1:N,M:N)。</p><p><b> 具體圖示如下:</b></
23、p><p><b> 3.3 邏輯設計</b></p><p> 邏輯結(jié)構設計就是把概念結(jié)構設計階段設計好的基本E-R圖轉(zhuǎn)換為選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型符合的邏輯結(jié)構。本次采用的DBMS為SQL SERVER 2000。根據(jù)SQL SERVER 2000的特點,數(shù)據(jù)模型為關系數(shù)據(jù)模型。</p><p> 3.3.1 概念設計的目標與任務
24、</p><p> 概念設計階段的主要任務有:</p><p> (1)將E-R模型轉(zhuǎn)換為關系模型,確定關系模式的屬性和碼。</p><p> ?。?)利用范式理論對現(xiàn)有數(shù)據(jù)模型進行優(yōu)化。</p><p> ?。?)完成數(shù)據(jù)庫模式定義描述,包括各模式的邏輯結(jié)構定義、關系的完整性和安全性等內(nèi)容。</p><p>
25、(4)設計用戶子模式—視圖設計,完成適合不同用戶的子模式設計。</p><p> 3.3.2 概念設計</p><p> 一個實體型轉(zhuǎn)換為一個關系模式。實體的屬性就是關系的屬性,實體的碼就是關系的碼。</p><p> 1.將E-R模型轉(zhuǎn)換為關系模型</p><p><b> 轉(zhuǎn)換原則:</b></p>
26、;<p> 一個1:1聯(lián)系可以轉(zhuǎn)換為一個獨立的關系,也可以與任意一段對應的關系模式合并。如果轉(zhuǎn)化為一個獨立的關系模式,則與該聯(lián)系相連的各個實體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關系的屬性,每個實體的碼均是該關系的候選碼。如果與某一個實體對應的關系合并,則需要在該關系模式的屬性中加入另一個關系的主碼和聯(lián)系本身的屬性。</p><p> 一個m:n的聯(lián)系可以轉(zhuǎn)化為一個單獨的關系模式,這個單獨的關系模式的
27、主碼是兩端實體的碼,再加上聯(lián)系的屬性。</p><p> 一個1:n聯(lián)系可以轉(zhuǎn)化為一個獨立的關系模式,也可以與n端的關系模式合并作如果與n端的關系模式合并,在n端的關系模式中加上另一端關系的碼和聯(lián)系屬性。</p><p> 根據(jù)以上規(guī)則,本系統(tǒng)的E-R模型向關系模型轉(zhuǎn)換如下(其中關系的碼用下劃線標出):</p><p> 購書單(購書單編號,圖書名稱,圖書數(shù)量
28、,購書日期,購書費用)</p><p> 購書(購書單編號,圖書編號,圖書名稱,購書數(shù)量,購書費用)</p><p> 退書單(退書單編號,圖書名稱,圖書數(shù)量)</p><p> 退書(退書單編號,圖書編號,圖書名稱,退書數(shù)量)</p><p> 圖書(圖書編號,圖書名稱,供應商,單價,作者)</p><p>
29、 供應商(供應商號,供應商名稱,地址,郵編,電話)</p><p> 供應(供應商編號,圖書編號,供應數(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ù)語義要求,觀察各關系中的屬性是否可分解,從而判斷是否滿足1NF;</p><p> b分析主屬性對非主屬性是否
31、存在部分函數(shù)依賴,從而判斷是否滿足2NF;</p><p> c分析主屬性對非主屬性是否存在傳遞函數(shù)依賴,從而判斷是否滿足3NF;</p><p> d分析是否無損分解,是否保持函數(shù)依賴關系;</p><p><b> 分析過程:</b></p><p><b> 3.模式定義</b><
32、;/p><p> 關系模式的定義包括各模式的邏輯結(jié)構定義、關系的完整性和安全性等內(nèi)容。</p><p> 表2-5 關系模式匯總</p><p> 3.4用戶子模式——視圖設計</p><p> 對于購書單這一關系模式,由于顧客和管理者都需要知道其中的各個屬性,故只需要建立一個視圖:</p><p> 購書單(
33、圖書編號,購書單編號,購書數(shù)量,購書日期)</p><p> 購書者可以在購書小票中看到其中的各個屬性,而管理者則可以查詢每個購書單所購圖書的詳細信息以及購書日期、購書數(shù)量等。</p><p> 在圖書關系上,可以建立兩個視圖:</p><p> 為一般用戶建立的視圖:</p><p> 圖書1(名稱,作者,出版社,單價,出版日期,備
34、注)</p><p> 為管理者建立的視圖:</p><p> 圖書(圖書編號,供應商編號,名稱,作者,出版社,單價,出版日期,所存?zhèn)}庫號,備注)</p><p> 用戶視圖中只包含允許用戶查詢的屬性,而管理者則可以查詢其所有屬性,重要的是供應商和所存?zhèn)}庫號。</p><p> 類似地可以得到各個關系模式的基于不同對象的視圖,如表5.
35、3.1所示。</p><p> 表4.3.1 視圖分類</p><p> 3.4.1功能模塊圖</p><p> 圖書進銷存系統(tǒng)功能模塊圖</p><p><b> 5 物理結(jié)構設計</b></p><p> 數(shù)據(jù)庫在物理設備上的存儲結(jié)構與存取方法稱為數(shù)據(jù)庫的物理結(jié)構,它依賴于給定的計算
36、機系統(tǒng)。為一個給定的邏輯數(shù)據(jù)模型選取一個最適合應用要求的物理結(jié)構的過程,就是數(shù)據(jù)庫的物理設計。</p><p><b> 目標與任務:</b></p><p> 本階段要完成的任務是為關系模式選擇取存方法和設計關系索引等數(shù)據(jù)庫文件的物理存儲結(jié)構</p><p><b> 5.1 數(shù)據(jù)存取</b></p>
37、<p> 這一階段的任務是建立索引。建立索引的目的是為了更高速度的訪問對應的屬性列或是屬性組。可以在一個基本表上建立索引,以提供多種存儲路徑,加快訪問速度。</p><p> 5.1.1 建立索引的原則</p><p> 建立索引一般有以下三個原則:</p><p> (1) 如果一個(或一組)屬性經(jīng)常在查詢條件中出現(xiàn),則考慮在這個(或這組)屬性
38、上建立索引。</p><p> (2) 如果一個經(jīng)常作為最大值和最小值等聚集函數(shù)的參數(shù),則考慮在這個屬性上建立索引。</p><p> (3) 如果一個(或一組)屬性經(jīng)常在連接操作的連接條件中出現(xiàn),則考慮在這個(或這組)屬性上建立索引。</p><p> 5.1.2 建立索引</p><p> 根據(jù)系統(tǒng)和用戶的需要,由于圖書編號、購書
39、單編號、供應商編號和倉庫編號等幾個屬性查詢操作比較頻繁,故需對其所在的表建立唯一索引,如表5.1.2-01所示。</p><p> 表5.1.2-01 唯一索引表</p><p> 而購書數(shù)量、入庫日期、出庫日期、進購圖書數(shù)量、圖書進購日期、購書日期、圖書出版社等屬性是經(jīng)常按順序排列查詢,故需建立聚簇索引,如表5.1.2-02所示。</p><p> 表5.1
40、.2-02 聚簇索引表</p><p><b> 5.2 程序流程圖</b></p><p> 管理信息系統(tǒng)處理方式的合理選擇,是一個處理過程的設計問題。選擇處理方式實際上就是根據(jù)系統(tǒng)的任務、目標和環(huán)境條件,合理選擇信息活動的形式及其具體方法。</p><p> 在繪制流程圖時使用的符號如下:</p><p>
41、由此可得本系統(tǒng)的程序流程圖,如圖5.2.1所示。</p><p> 圖5.2.1 系統(tǒng)程序流程圖</p><p><b> 6 數(shù)據(jù)庫實施</b></p><p> 在上一節(jié)數(shù)據(jù)庫的物理設計之后,就要用RDBMS提供的數(shù)據(jù)定義和其他實用程序?qū)?shù)據(jù)庫邏輯設計和物理設計結(jié)果嚴格描述出來,成為DBMS可以接受的源代碼,再經(jīng)過調(diào)試產(chǎn)生目標模式。然
42、后就可以組織數(shù)據(jù)入庫了,這就是數(shù)據(jù)庫實施階段。</p><p> 數(shù)據(jù)庫實施階段的任務是完成數(shù)據(jù)的載入及應用程序的編碼和調(diào)試。</p><p> 6.1 數(shù)據(jù)庫的實現(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ù)項</b></p><p> 表1.1.1圖書信息表</p><p> 表1.1.2客戶購書表</p><p> 表1.1.3 庫存圖書表</p><p> 表1.1.4 進貨表</p>
44、;<p> 表1.1.5倉庫管理員信息表</p><p> 表1.1.6 供應商信息表</p><p> 表1.1.7倉庫信息表</p><p><b> 1.2數(shù)據(jù)結(jié)構</b></p><p><b> 1.3數(shù)據(jù)流</b></p><p><
45、b> 1.4外部實體</b></p><p><b> 1.5處理邏輯</b></p><p><b> 1.6數(shù)據(jù)存儲</b></p><p> 附錄2關系模式的說明:</p><p> 1-1購書單關系的說明</p><p> 1-2供應關系
46、的說明</p><p> 1-3供應商關系的說明</p><p> 1-4倉庫管理員關系的說明</p><p> 1-5倉庫關系的說明</p><p> 1-6存儲關系的說明</p><p> 1-7圖書關系的說明</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ù)圖書查詢供應商信息</p><p> 存儲功能插入功能的驗證</p><p> 存儲功能刪除功能的驗證</p><p> 存儲功能更新功能的驗證</p><p><b> 觸發(fā)器功能的驗證</b></p>&l
49、t;p> 進貨時增加貨物的庫存量</p><p> 銷售貨物時減少貨物的庫存量</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)建供應表</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)建供應商表&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> --建立查詢供應商信息的視圖</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> --建立查詢供應關系的視圖</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> 進貨后在庫存表中更新記錄的觸發(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)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 書店管理系統(tǒng)數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計(書店租賃管理系統(tǒng))
- 網(wǎng)上書店管理系統(tǒng)數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計報告(書店租賃管理系統(tǒng))
- 數(shù)據(jù)庫技術及應用課程設計--書店管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--書店管理系統(tǒng)的設計與實現(xiàn)
- 數(shù)據(jù)庫課程設計報告--書店租賃系統(tǒng)
- 網(wǎng)上書店管理信息系統(tǒng)--數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計--數(shù)據(jù)庫設計—公司管理系統(tǒng)
- 網(wǎng)上書店管理信息系統(tǒng)數(shù)據(jù)庫課程設計
- 網(wǎng)上書店數(shù)據(jù)庫課程設計報告
- 網(wǎng)上書店管理信息系統(tǒng)_數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計-某書店圖書進貨銷售系統(tǒng)
- 數(shù)據(jù)庫課程設計---機房管理系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計---圖書管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--工資管理系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計-酒店管理系統(tǒng)課程設計
- 數(shù)據(jù)庫原理課程設計---教室管理系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計--bbs系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計論文---汽車銷售管理系統(tǒng)數(shù)據(jù)庫設計
評論
0/150
提交評論