




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 信息工程學院數(shù)據(jù)庫課程設計論文題 目:藥品存銷信息管理系統(tǒng)學 號:*專業(yè)班級:計算機科學與技術103姓 名:*指導老師:*完成日期:2012年01月13日藥品存銷信息管理系統(tǒng)數(shù)據(jù)庫設計*(信息工程學院計算機科學與技術10級3班)摘 要 本次課程設計是藥品存銷信息管理系統(tǒng),伴隨著社會的復雜化,傳統(tǒng)的“一支筆,一本帳簿”的藥品銷售管理方式也慢慢的無法適應形勢的變化。隨著信息技術的發(fā)展,計算機已被廣泛的用于社會的各個領域,成為推動社會發(fā)展的技術動力。因此設計藥品存銷信息系統(tǒng)是當務之急,本系統(tǒng)包括藥品采購,藥品存儲,藥品銷售。藥品采購包括采購員進貨,采購員退貨。藥品存儲包括倉庫存儲以及倉庫管理員管理
2、倉庫。藥品銷售包括顧客買藥與顧客退藥。本系統(tǒng)包括幾個視圖來使數(shù)據(jù)庫使用者快速的查詢想要得到的信息,本系統(tǒng)包括幾個PL/SQL語句塊,還包括幾個觸發(fā)器,使得數(shù)據(jù)得到同步修改,使數(shù)據(jù)庫中的數(shù)據(jù)更加合理。關鍵字:數(shù)據(jù)庫;經(jīng)銷存;藥品管理系統(tǒng)- 27 - / 28目錄目錄- 1 -1.需求分析- 3 -1.1需求分析階段處理對象及組織- 3 -1.2信息處理及系統(tǒng)功能- 3 -1.2.2數(shù)據(jù)字典- 5 -2數(shù)據(jù)庫結構設計- 5 -2.1 概念設計- 5 -2.2 邏輯設計- 8 -2.2.1 建立關系模式- 8 -2.2.2 關系模式規(guī)化處理- 10 -以上關系模式中的各實體和聯(lián)系之間不存在非主屬性對
3、主屬性的部分函數(shù)依賴,也不存在傳遞函數(shù)依賴,已經(jīng)達到了3NF。- 10 -2.2.3 用戶子模式建立- 10 -3 數(shù)據(jù)庫物理設計- 10 -3.1 物理設計階段目標和任務- 10 -3.2數(shù)據(jù)存儲方面- 11 -3.2.1 建立索引的原則- 11 -4數(shù)據(jù)庫實施與測試- 11 -4.1 數(shù)據(jù)庫實施- 11 -4.1.1 數(shù)據(jù)庫及數(shù)據(jù)庫對象建立- 11 -5總結- 13 -6附錄- 13 -附錄1 :- 13 -附錄2- 17 -附錄3- 22 -引言隨著全球信息技術的飛速發(fā)展,尤其是因特網(wǎng)的出現(xiàn)和普及,企業(yè)和決策都發(fā)生 了根本的改變。采用信息技術促進、改造藥店的生產(chǎn)、經(jīng)營、管理,有效采集和處
4、理 信息,增強企業(yè)決策的有效性,適應全球發(fā)展的要求,將成為企業(yè)發(fā)展的必由之路。 信息管理系統(tǒng)已經(jīng)成為現(xiàn)代企業(yè)的一個重要標志和衡量企業(yè)綜合實力的重要組成部分。但是,信息管理系統(tǒng)的開發(fā)卻非常困難。開發(fā)一個成功的企業(yè)信息管理系統(tǒng),不僅要有方方面面的專業(yè)知識,還要充分分析企業(yè)部、外部環(huán)境的變化和關系,以及 在信息管理系統(tǒng)開發(fā)過程中所涉及的設備、技術上的復雜性。這就需要系統(tǒng)開發(fā)者不斷總結經(jīng)驗,不斷探索更好的方法和技術。如今藥品無論在任何時候都是一個國家最重要的東西,也是對一個人最需要的東西,藥品管理正處于一個高速發(fā)展的時期。藥品的信息在供應商與銷售部和顧客之間大量的流通,因此,建立一個合適的數(shù)據(jù)庫來管理
5、這些數(shù)據(jù)是必不可少的。這樣藥品存銷信息管理系統(tǒng)就這樣誕生了,它可以高效的來管理這些數(shù)據(jù),是藥品高效的發(fā)貨和供應。本次數(shù)據(jù)庫設計嚴格按照書上的要求和設計數(shù)據(jù)庫步驟,從需求分析,概念設計,邏輯設計,物理設計,到數(shù)據(jù)庫最后的建立、運行。1.需求分析主要包括容:處理對象及組織;信息處理及系統(tǒng)功能;數(shù)據(jù)庫系統(tǒng)性能需要,數(shù)據(jù)庫系統(tǒng)開發(fā)環(huán)境需求等。在闡述信息及其處理過程時,要輔助業(yè)務流程圖、數(shù)據(jù)流程圖及數(shù)據(jù)字典。對上述三個問題可以以附錄的形式詳細羅列,但正文中必須指明做了哪些業(yè)務流程圖、數(shù)據(jù)流程圖和數(shù)據(jù)字典的規(guī)模。1.1需求分析階段處理對象及組織(1)熟悉業(yè)務并繪制業(yè)務路程圖;(2)根據(jù)業(yè)務流程圖明確有哪些
6、數(shù)據(jù)流動,繪制數(shù)據(jù)流程圖;(3)建立數(shù)據(jù)字典,其中包括數(shù)據(jù)項、數(shù)據(jù)結構、數(shù)據(jù)流、數(shù)據(jù)存儲、處理過程等。1.2信息處理及系統(tǒng)功能1.2.1數(shù)據(jù)流程圖藥品存銷信息管理系統(tǒng)數(shù)據(jù)流程圖如下(3) 第一層數(shù)據(jù)流程圖圖1-1第一層數(shù)據(jù)流程圖(2)第二層數(shù)據(jù)流程圖進貨圖1-2 進貨數(shù)據(jù)流程圖(4) 第二層數(shù)據(jù)流程圖銷售圖1-3 銷售數(shù)據(jù)流程圖(5) 第二層數(shù)據(jù)流程圖存儲圖1-4 存儲數(shù)據(jù)流程圖1.2.2數(shù)據(jù)字典 包含數(shù)據(jù)項、數(shù)據(jù)結構、數(shù)據(jù)流、處理邏輯、數(shù)據(jù)存儲定義(詳見附錄1)。2數(shù)據(jù)庫結構設計2.1 概念設計階段要求:(1)能真實、充分地反映現(xiàn)實世界,包括事物與事物之間的聯(lián)系,能滿足用戶對數(shù)據(jù)的處理要求,
7、是對現(xiàn)實世界的一個真實模型;(2)易于理解,因此可以用它和不熟悉計算機的用戶交換意見;(3)易于更改,當應用環(huán)境和應用要求改變時,容易對概念模型修改和擴充;(4)易于向關系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉換。2.2.1 分E-R圖的建立建立分E-R圖的思想: 對需求分析階段收集到的數(shù)據(jù)進行分類、組織(聚集),形成實體、實體的屬性,標識實體的碼,確定實體之間的聯(lián)系類型(1:1,1:n,m:n),設計分E-R圖;參照數(shù)據(jù)流程圖畫出分E-R圖(1) 進貨時的分E-R圖圖2-1 進貨時的分E-R圖(2) 銷售時的分E-R圖圖2-2銷售時的分E-R圖(3) 盤存時的分E-R圖圖2-3盤存時的分E-R圖2.1
8、.2 全局/整體E-R圖1.每次集成局部E-R圖是,分兩步走(1)合并。解決各分E-R圖之間的沖突,將各分E-R圖合并起來生成初步的E-R圖。 (2)修改和重構。消除不必要的冗余??侲-R圖圖2-4 總E-R圖2.2 邏輯設計概念設計階段是獨立于任何一種數(shù)據(jù)模型的,而邏輯設計階段則與現(xiàn)實結合起來,邏輯設計的任務就是將概念設計階段設計好的基本E-R圖轉換為與項目所支持的數(shù)據(jù)模型相符合的邏輯結構。具體任務包括將E-R圖轉換成關系模型、模型優(yōu)化、數(shù)據(jù)庫模式定義、用戶模式設計。2.2.1 建立關系模式轉化規(guī)則:一個實體型轉換為一個關系模式,實體的屬性就是關系的屬性,實體的碼就是關系的碼。一個1:1聯(lián)系
9、可以轉換為一個獨立關系模式,也可以與任意一端關系模式合并;一個1:N聯(lián)系可以轉換為一個獨立關系模式,也可以與n端實對應的關系模式合并;一個M:N聯(lián)系轉換為一個獨立關系模式,具有相同碼的關系模式可以合并根據(jù)以上轉化規(guī)則可得供應商(供應商的編號,供應商的名稱,供應商的地址,供應商的聯(lián)系)供應商的編號->供應商的名稱,供應商的編號->供應商的地址,供應商的編號->供應商的聯(lián)系藥品(藥品的編號,藥品名稱,藥品重量,藥品類別,藥品單價,藥品生產(chǎn)日期,藥品保質(zhì)期)藥品的編號->藥品名稱,藥品的編號->藥品重量,藥品的編號->藥品類別,藥品的編號->藥品單價,藥品的
10、編號->藥品生產(chǎn)日期,藥品的編號->藥品保質(zhì)期顧客(顧客,顧客編號,顧客年齡,顧客聯(lián)系,顧客地址,顧客郵編)顧客編號->顧客,顧客編號->顧客年齡,顧客編號->顧客聯(lián)系,顧客編號->顧客地址,顧客編號->顧客郵編倉庫(倉庫編號,倉庫當前庫存量,倉庫最大庫存量,倉庫最小庫存量)倉庫編號->倉庫當前容量,倉庫編號->倉庫最大容量,倉庫編號->倉庫最小容量工作人員(人員編號,人員名稱,人員,人員地址,人員類型)人員編號->人員名稱,人員編號->人員,人員編號->人員地址,人員編號->人員類型銷售員售貨(人員編號,顧客
11、編號,貨物編號,購買數(shù)量,銷售日期)(人員編號,顧客編號)->貨物編號,(人員編號,顧客編號)->購買數(shù)量(人員編號,顧客編號)->銷售日期顧客退貨(人員編號,顧客編號,退貨數(shù)量,退貨日期)(人員編號,顧客編號)->退貨數(shù)量,(人員編號,顧客編號)->退貨日期采購員進貨(供應商編號,采購員編號,進貨數(shù)量,進貨日期)(供應商編號,采購員編號)->進貨數(shù)量,(供應商編號,采購員編號)->進貨日期采購員退貨(供應商編號,采購員編號,退貨數(shù)量,退貨日期)2.2.2 關系模式規(guī)化處理以上關系模式中的各實體和聯(lián)系之間不存在非主屬性對主屬性的部分函數(shù)依賴,也不存在傳
12、遞函數(shù)依賴,已經(jīng)達到了3NF。2.2.3 用戶子模式建立表2-1 關系外模式序號視圖名稱作用備注1price查詢各種商品的單價2StorageNow查詢目前倉庫貨物數(shù)量3Workweight查詢采購員的采購信息4worksale查詢售貨員買了多少東西2.2.4 關系模式邏輯結構定義詳細的邏輯結構定義見附錄23 數(shù)據(jù)庫物理設計3.1 物理設計階段目標和任務數(shù)據(jù)庫的物理設計是為邏輯數(shù)據(jù)模型選取一個最合適應用需求的物理結構的過程,在這個階段中需要完成的任務是:(1) 確定數(shù)據(jù)庫的物理結構,在關系數(shù)據(jù)庫中主要是存取方法和存儲結構;(2) 對物理結構進行評價,評價的重點是時間和空間效率。3.2數(shù)據(jù)存儲方
13、面3.2.1 建立索引的原則建立索引一般有以下三個原則:(1) 如果一個或一組屬性經(jīng)常在查詢條件中出現(xiàn),則考慮在這個屬性上建立索引。(2) 如果一個經(jīng)常作為最大值和最小值等聚集函數(shù)的參數(shù),則考慮在這個屬性上建立索引。(3) 如果一個或一組屬性經(jīng)常在連接操作的連接條件中出現(xiàn),則考慮在這個屬性上建立索引。表3.1 索引所在表名索引名稱索引類型建立索引的項供應商信息表supplier_index唯一SupNumber藥品信息表goods_index唯一Gnumber客戶信息表customer_index唯一Cusnum4數(shù)據(jù)庫實施與測試主要包括數(shù)據(jù)庫實施和測試兩個部分。4.1 數(shù)據(jù)庫實施4.1.1
14、數(shù)據(jù)庫及數(shù)據(jù)庫對象建立主要包括:數(shù)據(jù)庫、基本表、視圖、索引、觸發(fā)器以及存儲過程;對于具體的DDL語句以及相關代碼,見附錄3。(1) 建立索引:Create unique index supplie_index on Supplier(SupNumber);Create unique index goods_index on Goods(Gnumber);Create unique index customer_index on Customer(Cusnum);(2)創(chuàng)建的視圖如表4.1 所示表4.1 視圖序號視圖名稱作用備注1price查詢各種商品的單價2StorageNow查詢目前倉庫貨物
15、數(shù)量3Workweight查詢采購員的采購信息4worksale查詢售貨員買了多少東西(3) 創(chuàng)建的存儲過程如表 4.2所示:表4.2 存儲過程編號存儲過程名稱作用P1SupPhone輸入一個供應商編號查詢其P2goodsprice查詢哪些藥品大于20P3Storagenow輸入倉庫號查詢其剩余貨物量P4worker_Insert向員工基本信息表插入一個元組P5Book_Insert向訂單基本信息表插入一個元組P6sale_Insert向銷售單基本信息表插入一個元組P7Return_Insert向退貨單基本信息表插入一個元組P8Person_delete從員工基本信息表中刪除一個元組(4)創(chuàng)建
16、的觸發(fā)器如表 4.3 所示:表4.3 觸發(fā)器編號觸發(fā)器名作用T1book當向訂貨單插入一條數(shù)據(jù)時修改倉庫數(shù)據(jù)T2return采購員退貨觸發(fā)器T3DeCustomer刪除顧客信息的同時刪除其他表中關于此人的信息4.1.2 數(shù)據(jù)入庫將10表導入到數(shù)據(jù)庫中5總結十天數(shù)據(jù)庫實習已經(jīng)結束,實習期間有三門重要的考試,使我們一邊應付考試,一邊做實習,晚上還要上通宵自習,感覺真的很累,有很多問題感到很難解決,還好,這些問題在不斷的思考中被解決了。這次數(shù)據(jù)庫實習讓我學到了很多的東西,原來上課的時候總感到有些不足,因為自己不知道數(shù)據(jù)庫到底在現(xiàn)實生活中有什么用處,因此感覺數(shù)據(jù)庫與現(xiàn)實生活沒有多大聯(lián)系。通過這次數(shù)據(jù)庫
17、實習讓我了解了數(shù)據(jù)庫的重要性,知道了數(shù)據(jù)庫在現(xiàn)實生活中到底怎么用。原來看課本上的數(shù)據(jù)庫設計步驟總是不能理解,不知道應該怎么用,通過本次實習,使我深刻的理解了每一個步驟到底是干什么的,怎么干,應該得到哪些東西。 通過本次實習,我學習了很多數(shù)據(jù)庫開發(fā)的技巧,例如如何畫數(shù)據(jù)流程圖,然后怎樣從數(shù)據(jù)流程圖中抽取出實體,如何畫E-R圖等等,這些東西都為自己開發(fā)數(shù)據(jù)庫提供了很多技巧。這也讓我明白了團里合作的重要性,當自己遇到不懂得地方時,通過與同學和老師的交流,使得我對一些問題得到了更加深刻的理解,使得我能夠按時完成本次數(shù)據(jù)庫實習。 非常感學院能夠安排本次數(shù)據(jù)庫實習,同時感老師細心,耐心詳細的講解,沒有他們
18、本次數(shù)據(jù)庫實習不可能圓滿結束。6附錄附錄1 :數(shù)據(jù)字典:(1) 數(shù)據(jù)項:表6-1DI-1SupNumber供應商的編號varchar(20)DI-2SupName供應商的名稱varchar(20)DI-3SupAddress供應商的地址varchar(20)DI-4SupPhone供應商的聯(lián)系varchar(20)DI-5Gnumber藥品的編號varchar(20)DI-6Gname藥品名稱varchar(20)DI-7Gweight藥品重量floatDI-8Gtype藥品類別varchar(20)DI-9Gprice藥品單價floatDI-10Gdate藥品生產(chǎn)日期dateDI-11Gst
19、odate藥品保質(zhì)期intDI-12Cusname顧客varchar(20)DI-13Cusnum顧客編號varchar(20)DI-14Cusage顧客年齡intDI-15CusPhone顧客聯(lián)系varchar(20)DI-16CusAddress顧客地址varchar(20)DI-17Cusnumber顧客郵編varchar(20)DI-18Gthdate顧客退貨時間dateDI-19Gjhdate顧客購藥日期dateDI-20Jhdate進貨日期dateDI-21Thdate退貨日期dateDI-22StorageSno倉庫編號intDI-23StorageNow倉庫目前庫存intDI-
20、24StorageMin倉庫最小容量intDI-25StorageMax倉庫最大容量intDI-26StoragePho倉庫聯(lián)系varchar(20)DI-27mannum人員編號varchar(20)DI-28manname人員名稱varchar(20)DI-29manPho人員varchar(20)DI-30manAdd人員地址varchar(20)DI-31mantype人員類型varchar(20)(2) 數(shù)據(jù)結構表6-2數(shù)據(jù)結構編號數(shù)據(jù)結構名數(shù)據(jù)結構含義組成DS-1Supplier供應商SupNumber SupName SupAddress SupPhoneDS-2Customer
21、顧客Cusname Cusage CusPhone CusAddress CusnumberDS-3Goods貨物Gnumber Gname Gtype Gweight Gprice GdateDS-4Storage倉庫StorageSno StorageMax StoragePho StorageAdmDS-5StorageManager倉庫管理員Stonumber Stoname StoAddress StoPhoneDS-6Delvebook發(fā)貨單SupName Gnumber Gname Gtype Gweight Gprice GdateDS-7Orderbook訂貨單SupNumb
22、er SupName Purmannum Gnumber Gweight JhdateDS-8Returnbook1退貨單SupNumber Purmannum Gnumber Gweight ThdateDS-9Salebook顧客購藥單Salemannum Cusname Gnumber Gname Gtype Gweight Gprice GjhdateDS-10Rerurnbook2顧客退貨單Salemannum Cusname Gnumber Gname Gtype Gweight Gprice GthdateDS-11Deposit倉庫庫存StorageSno Stonumber
23、Gnumber GweightDS-12Saleman售貨員Salemannum Salemanname SalemanPho SalemanAddDS-13Purchase采購員Purmannum Purmanname PurmanPho PurmanAdd(3) 數(shù)據(jù)流表6-3數(shù)據(jù)流編號數(shù)據(jù)流名稱簡述數(shù)據(jù)流來源數(shù)據(jù)流去向數(shù)據(jù)流組成數(shù)據(jù)流量高峰流量F1采購部訂貨單藥店向供應商提供藥品需求單采購部供應商商品編碼+商品名稱+進貨量+商品進價15次/月30次/月F2采購發(fā)貨單供應商發(fā)出的收貨單供應商檢驗貨物的模塊商品編碼+商品名稱+進貨量+商品進價15次/月30次/月F3庫存清單庫存帳目共采購部參
24、考的單據(jù)庫存賬目采購部差庫模塊商品編碼+商品名稱+庫存量30次/月60次/月F4采購部退貨單采購部向提供商發(fā)出的退貨單檢驗貨物的模塊供應商商品編碼+商品名稱+退貨量5次/月10次/月F5顧客購物單顧客購買藥物是開的訂單銷售人員顧客商品編號+商品名稱+購買量+商品售價+購買日期60次/月100次/月F6顧客退貨單顧客將要退藥的單據(jù)發(fā)給銷售部顧客退貨模塊確認退貨模塊商品編號+銷售人員編號+購買量+退貨日期10次/月20次/月F7不合格單采購部檢查到的不合格藥品的單子檢驗貨物的模塊退貨模塊藥品編號+藥品重量+退貨日期5次/月10次/月F8合格單檢驗貨物模塊填寫的合格藥品的單據(jù)檢驗貨物的模塊入庫管理模
25、塊藥品編號+藥品名稱10次/月20次/月F9入庫單庫管理員填寫的要入庫藥品的清單庫管員倉庫藥品編號+藥品數(shù)量15次/月30次/月(4) 處理邏輯表6-4處理邏輯編號處理邏輯名稱簡述輸入的數(shù)據(jù)流處理輸出的數(shù)據(jù)流處理頻率P1.1采購查庫采購部采購依據(jù)F1庫存清單根據(jù)清單確認采購商品F2采購訂貨單30次/月P1.2驗貨采購部檢驗來貨F3采購發(fā)貨單根據(jù)發(fā)貨單檢驗商品F4不合格單,F(xiàn)6合格單15次/月P1.3采購退貨檢驗不合格退去F4不合格單確認退貨F5采購退貨單10次/月P1.4入庫檢驗合格入庫F6檢驗合格單登記庫存帳目F7入庫單15次/月P2.1銷售銷售部向顧客賣貨F9顧客訂單導購提貨F10銷售單1
26、000次/月附錄2基本表的建立:貨物 表6-5屬性名類型取值圍是否為主鍵是否可為空Gnumbervarchar(20)YNGnamevarchar(20)NNGweightFloat>0NYGtypevarchar(20)NYGpriceFloat>0NYGdateDateNYGstodateInt>0NY供應商 表6-6屬性名類型取值圍是否為主鍵是否可為空SupNumbervarchar(20)YNSupNamevarchar(20)NYSupAddressvarchar(20)NYSupPhonevarchar(20)NY倉庫 表6-7屬性名類型取值圍是否為主鍵是否可為空
27、StorageSnoInt>0YNStorageMinInt>0 and <1000NYStorageNowInt>=0and<10000NYStorageMaxInt>0NYMannumVarchar(20)NNJhdateDateNN工作人員 表6-8屬性名類型取值圍是否為主鍵是否可為空mannumvarchar(20)YNmannamevarchar(20)NNmanPhovarchar(20)NYmanAddvarchar(20)NYmantypevarchar(20)NN顧客 表6-9屬性名類型取值圍是否為主鍵是否可為空Cusnamevarchar
28、(20)NNCusageInt>0NYCusnumVarchar(20)YNCusPhonevarchar(20)NYCusAddressvarchar(20)NYCusnumbervarchar(20)NY倉庫貨物 表6-10屬性名類型取值圍是否為主鍵是否可為空StorageSnoIntYNGnumbervarchar(20)YNStorageNowInt>0NN訂貨單 表6-11屬性名類型取值圍是否為主鍵是否可為空SupNumbervarchar(20)YNmannumvarchar(20)YNGnumbervarchar(20)YNGweightFloat>0NYGpr
29、iceFloat>0NYJhdateDateNY退貨單 表6-12屬性名類型取值圍是否為主鍵是否可為空SupNumbervarchar(20)YNmannumvarchar(20)YNGnumbervarchar(20)YNGweightFloat>0NYThdateDateNY銷售員售貨表6-13屬性名類型取值圍是否為主鍵是否可為空mannumvarchar(20)YNGnumbervarchar(20)YNCusnumvarchar(20)YNGweightFloat>0NYGpriceFloat>0NYGjhdateDateNY顧客退貨 表6-14屬性名類型取值圍
30、是否為主鍵是否可為空mannumvarchar(20)YNGnumbervarchar(20)YNCusnumvarchar(20)YNGweightFloatNYGthdateDateNY2.SQL語言實現(xiàn)創(chuàng)建貨物表createtable Goods(Gnumber varchar(20) primarykey,Gname varchar(20) notnull,Gweight floatcheck (Gweight>0),Gtype varchar(20),Gprice floatcheck (Gprice>0),Gdate date,Gstodate intcheck(Gst
31、odate>0)創(chuàng)建供應商表createtable Supplier(SupNumber varchar(20) primarykey,SupName varchar(20) notnull,SupAddress varchar(20),SupPhone varchar(20)創(chuàng)建倉庫存儲表createtable Storageage( StorageSno intprimarykey,StorageMin intcheck(storagemin>0),StorageNow intcheck(storagenow>0and storagenow<=1000),Stora
32、geMax intcheck(storagemax>0and storagemax<=1000),mannum varchar(20) references Worker(mannum),Jhdate date)創(chuàng)建工人表createtable Worker(mannum varchar(20) primarykey,manname varchar(20) notnull,manPho varchar(20),manAdd varchar(20),mantype varchar(20)創(chuàng)建顧客表createtable Customer( Cusnum varchar(20) pri
33、marykey,Cusname varchar(20) notnull, Cusage int,CusPhone varchar(20),CusAddress varchar(20),Cusnumber varchar(20)倉庫貨物createtable Manger(StorageSno intprimarykey ,Gnumber varchar(20) references goods(gnumber),StorageNow intcheck(StorageNow>0)訂貨單createtable Orderbook(SupNumber varchar(20),mannum va
34、rchar(20),Gnumber varchar(20),Gweight floatcheck (Gweight>0),Gprice floatcheck (Gprice>0),Jhdate date,primarykey (SupNumber,mannum,Gnumber),foreignkey (SupNumber) references Supplier(SupNumber),foreignkey (mannum) references Worker(mannum),foreignkey (Gnumber) references Goods(Gnumber)退貨單creat
35、etable Returnbook1( SupNumber varchar(20),mannum varchar(20),Gnumber varchar(20),Gweight floatcheck(Gweight>0),Thdate date,primarykey (SupNumber,mannum,Gnumber),foreignkey (SupNumber) references Supplier(SupNumber),foreignkey (mannum) references Worker(mannum),foreignkey (Gnumber) references Good
36、s(Gnumber)銷售員售貨createtable Salebook( mannum varchar(20),Gnumber varchar(20),Cusnum varchar(20),Gweight floatcheck(Gweight>0),Gprice floatcheck(Gprice>0),Gjhdate date,primarykey(mannum,Gnumber,Cusnum),foreignkey (mannum) references Worker(mannum),foreignkey (Gnumber) references Goods(Gnumber),f
37、oreignkey (Cusnum) references Customer(Cusnum)顧客退貨createtable Rerurnbook2(mannum varchar(20),Gnumber varchar(20),Cusnum varchar(20),Gweight floatcheck(Gweight>0),Gthdate date,primarykey(mannum,Gnumber,Cusnum),foreignkey (mannum) references Worker(mannum),foreignkey (Gnumber) references Goods(Gnum
38、ber),foreignkey (Cusnum) references Customer(Cusnum)附錄3一.數(shù)據(jù)庫視圖1. 創(chuàng)建各種商品的單價的視圖createview priceasselect Gname,Gpricefrom goodsselect gname,gpricefrom price2. 查詢目前倉庫貨物數(shù)量的試圖createview StorageNowasselect StorageSno,StorageNowfrom mangerselect StorageSno,StorageNowfrom storagenow3. 查詢采購員的采購信息createview Wo
39、rkweightasselect mannum,Gweightfrom orderbookselect *from workweight4.查詢售貨員賣了多少東西2. 存儲過程1.輸入一個供應商編號查詢其createorreplaceprocedureSupPhone(v_supsno in Supplier.Supnumber%type,v_supphone out Supplier.Supphone%type)isbeginselect supphoneinto v_supphonefrom Supplierwhere v_supsno=supnumber;end;測試declarea v
40、archar2(10):='4'b varchar2(20);beginsupphone(a,b);dbms_output.put_line(b);end;結果輸出2. 查詢哪些藥品價格大于20(用游標)createorreplaceproceduregoodspriceis v_Gname goods.gname%type; v_Gprice Goods.Gprice%type;cursor c1 isselect Gname, Gprice from Goodswhere Gweight>20;beginopen c1;loopfetch c1 into v_Gnam
41、e,v_Gprice;exitwhen c1%notfound; dbms_output.put_line(v_Gname|'-'|v_Gprice);endloop;close c1;end;檢驗:begin goodsprice;end;輸出結果3.輸入倉庫號查詢其剩余貨物量createorreplaceprocedureStoragenow1(v_storagesno in Storageage.Storagesno%type,v_storagenow out Storageage.Storagenow%type)isbeginselect Storagenowinto
42、v_storagenowFrom mangerwhere v_storagesno=Storagesno;end;測試declare a int:=5; b int;beginStoragenow1(a,b); dbms_output.put_line(b);end;輸出結果4.向員工基本信息表插入一個元組createorreplaceprocedure worker_Insert(v_mannum worker.mannum%type,v_manname worker.manname%type,v_manpho worker.manpho%type,v_manadd worker.manad
43、d%type,v_mantype worker.mantype%type)asbegininsertinto worker(mannum,manname,manpho,manadd,mantype)values(v_mannum,v_manname,v_manpho,v_manadd,v_mantype);mit;end;測試:begin worker_insert('99','99','99','99','售貨員');end;select *from worker輸出結果5.向訂單基本信息表插入一個元組creat
44、eorreplaceprocedure Book_Insert(v_mannum orderbook.SupNumber%type,v_manname orderbook.mannum%type,v_manpho orderbook.Gnumber%type,v_manadd orderbook.Gweight%type,v_mantype orderbook.Gprice%type)asbegininsertinto orderbook(SupNumber,mannum,Gnumber,Gweight,Gprice)values(v_mannum,v_manname,v_manpho,v_manadd,v_mantype);mit;end;測試:begin Book_Insert('1','27','2',5,5);end;select *from orderbook結果輸出6. 向銷售單基本信息表插入一個元組createorreplaceprocedure Book_Insert(v_mannum salebook.mannum%type,v_manname salebook.Gnumber%type,v_manpho salebook.Cusnum%type,v_manadd salebook.Gweight%type,v_m
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- TD/T 1028-2010鄉(xiāng)(鎮(zhèn))土地利用總體規(guī)劃數(shù)據(jù)庫標準
- JJG(煙草)31-2021煙草數(shù)字投影儀
- 廣東省肇慶市2024-2025屆高三上學期第二次模擬考試 物理 含答案練習題
- 化學●廣東卷丨2023年廣東省普通高中學業(yè)水平選擇性考試化學試卷及答案
- 考研復習-風景園林基礎考研試題附參考答案詳解(基礎題)
- 風景園林基礎考研資料試題及參考答案詳解(鞏固)
- 2024年山東華興機械集團有限責任公司人員招聘筆試備考題庫附答案詳解
- 2024年濱州新能源集團有限責任公司及權屬公司公開招聘工作人員遞補筆試備考題庫附答案詳解(綜合卷)
- 2023國家能源投資集團有限責任公司第一批社會招聘筆試備考題庫帶答案詳解
- 2025年河北省定州市輔警招聘考試試題題庫附答案詳解(突破訓練)
- (2025)紀檢監(jiān)察業(yè)務知識考試題及含答案
- (正式版)HGT 6313-2024 化工園區(qū)智慧化評價導則
- 《分析化學》期末考試試卷(A)及答案
- 燒烤店菜單模板
- 電大漢語言文學專業(yè)本科社會實踐調(diào)查報告
- 11-059 職業(yè)技能鑒定指導書 繼電保護(第二版)(11-059職業(yè)技能鑒定指導書職業(yè)標準試題庫)
- GMP基礎知識(新員工培訓)
- LGJ鋼芯鋁絞線參數(shù)
- 機械加工工藝卡片實例(共12頁)
- 油庫安全點檢表
- 金屬材料力學性能檢測樣品制樣作業(yè)指導書
評論
0/150
提交評論