倉庫管理系統(tǒng)課程設(shè)計報告.doc_第1頁
倉庫管理系統(tǒng)課程設(shè)計報告.doc_第2頁
倉庫管理系統(tǒng)課程設(shè)計報告.doc_第3頁
倉庫管理系統(tǒng)課程設(shè)計報告.doc_第4頁
倉庫管理系統(tǒng)課程設(shè)計報告.doc_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計(論文)課程名稱數(shù)據(jù)庫課程設(shè)計題目名稱 倉庫管理系統(tǒng)學(xué)生學(xué)院計算機學(xué)院專業(yè)班級05級網(wǎng)絡(luò)工程3班學(xué) 號 _3105007546學(xué)生姓名麥文鉅指導(dǎo)教師何曉桃2009年1 月廣東工業(yè)大學(xué)課程設(shè)計任務(wù)書題目名稱學(xué)生學(xué)院專業(yè)班級倉庫管理系統(tǒng)計算機學(xué)院網(wǎng)絡(luò)開發(fā)0503班麥文鉅3105007546一、課程設(shè)計的內(nèi)容1、學(xué)習(xí)與實踐數(shù)據(jù)庫應(yīng)用程序開發(fā)流程;2 、學(xué)習(xí)使用某一種數(shù)據(jù)庫服務(wù),學(xué)會數(shù)據(jù)庫應(yīng)用程序編程,安裝配置系統(tǒng) 開發(fā)環(huán)境;3 、設(shè)計和實現(xiàn)倉庫管理系統(tǒng);4、撰寫課程設(shè)計報告。二、課程設(shè)計的要求與數(shù)據(jù)系統(tǒng)應(yīng)該實現(xiàn)以下功能:(1) 進、出庫管理。對進、出庫信息進行記錄。(2) 查詢功能。倉庫管理

2、對查詢要求高,通過主菜單記錄當前操作用戶的用戶編號,保證了對進、出庫信息錄入負責(zé)人的確認。(3) 部門資料管理與庫存報表生成。資料管理包括了人員信息管理,財政支出信息管理,以及各項業(yè)務(wù)單據(jù)的資料管理。報表主要分類為:日報表,月報表,銷售報表,入 庫報表等等。(4) 由于計算機能存貯大量的數(shù)據(jù),而且數(shù)據(jù)只要一次存入,便可多次重復(fù)使用,所以管理數(shù)據(jù)達到完整,統(tǒng)一,原始記錄能保證及時,準確。(5) 許多重復(fù)性的工作,都可由計算機去執(zhí)行,從而使管理人員從事務(wù)性工作解脫出來,真正變?yōu)閺氖乱恍┬畔⒌姆治觯袛啵瑳Q策等創(chuàng)造性的工作。數(shù)據(jù)自己自行編造測試。論文要求結(jié)構(gòu)嚴謹、格式規(guī)范,內(nèi)容正確、文字通順。三、課

3、程設(shè)計應(yīng)完成的工作該系統(tǒng)主要分為三大功能:管理員功能、信息安全功能、一般用戶功能、報表生成。(1) 管理員功能:產(chǎn)品入庫登記、確認入庫信息、刪除庫內(nèi)信息、借出信息登記、產(chǎn)品 分類管理、添加人員、刪除人員、查詢庫內(nèi)信息。(2) 信息安全功能:人員權(quán)限區(qū)分、事件記錄、數(shù)據(jù)警告、數(shù)據(jù)備份、數(shù)據(jù)恢復(fù);(3) 般用戶功能:查詢庫內(nèi)信息、查詢出庫信息、查詢?nèi)霂煨畔ⅰ⑿薷谋居脩裘艽a;(4) 報表生成:庫存信息報表生成。四、課程設(shè)計進程安排序 號設(shè)計(論文)各階段名稱地點起止日期1選定本次課程設(shè)計及報告的研究課題宿舍2008.12.282對研究課題進行調(diào)查并做出詳細的需求 分析宿舍2008.12.293收集資

4、料和參考文獻圖書館2008.12.294認真閱讀和學(xué)習(xí)資料、文獻并做出初步構(gòu) 思宿舍2008.12.30-2008.12.315制定出整個系統(tǒng)的設(shè)計構(gòu)想、設(shè)計思路和 方法宿舍2008.12.31-2009.1.16進行系統(tǒng)的設(shè)計、開發(fā)和編與程序代碼宿舍2009.1.1-2009.1.37對系統(tǒng)進行測試和系統(tǒng)調(diào)試宿舍2009.1.48元成整個系統(tǒng)的開發(fā)并進行系統(tǒng)維護宿舍2009.1.49撰寫課程設(shè)計報告宿舍2009.1.4-2009.1.510最終完成系統(tǒng)修改、論文撰寫和表格填寫宿舍2009.1.511上交課程設(shè)計報告、系統(tǒng)答辯教學(xué)樓2009.1.7-2009.1.94五、應(yīng)收集的資料及主要參考

5、文獻1 MySQL 5.1參考手冊 n/5.1/zh/i ntroductio n.html#features2 D 3 數(shù)據(jù)庫系統(tǒng)概論(第四版) 王珊薩師煊高等教育出版社2006.54 軟件工程(第二版)李代平等編著清華大學(xué)出版社2008. 1MySQL開發(fā)者SQL權(quán)威指南(荷)Rick F. van der Lans著 許杰星 李強等譯 機械工業(yè)出版社2008.16 學(xué)習(xí) MySQL(影印版)Seyed M.M."Saied" Tabagbogbi & Hugb E.Williams著 南京:東南大學(xué)出版社2007.67 C+Builder程序員成長攻略蒙祖強龔

6、濤等編著北京:中國水利水電出版社 2007.1發(fā)出任務(wù)書日期:2008年12月29日指導(dǎo)教師簽名:何曉桃計劃完成日期:2009年1月5日基層教學(xué)單位責(zé)任人簽章:主管院長簽章:5目錄一、相關(guān)技術(shù)介紹71.1 MySQL71.2 Borland C+Builder 集成開發(fā)環(huán)境 81.3 MyDAC 組件庫8二、需求分析102.1 功能需求及用戶需求 102.1.1 功能需求102.1.2 用戶需求102.2 系統(tǒng)流圖112.3 數(shù)據(jù)描述112.3.1數(shù)據(jù)字典112.3.1.1基本數(shù)據(jù)項及數(shù)據(jù)結(jié)構(gòu) 112.3.1.2數(shù)據(jù)流條目 122.3.1.3數(shù)據(jù)存儲條目 122.3.1.4加工條目 132.3

7、.2數(shù)據(jù)流圖142.4安全性和完整性要求 152.4.1安全性要求152.4.2完整性要求16三、概念結(jié)構(gòu)設(shè)計16四、邏輯結(jié)構(gòu)設(shè)計184.1關(guān)系模型設(shè)計184.2用戶子模式設(shè)計224.3系統(tǒng)結(jié)構(gòu)圖264.4安全性和完整性設(shè)計 264.4.1安全性設(shè)計264.4.2完整性設(shè)計27五、數(shù)據(jù)庫物理設(shè)計 285.1建立索引285.2確定數(shù)據(jù)的存放位置 285.3確定系統(tǒng)配置 295.4模塊設(shè)計30六、數(shù)據(jù)庫實施306.1創(chuàng)建數(shù)據(jù)庫及數(shù)據(jù)庫對象SQL腳本 306.2數(shù)據(jù)庫備份和恢復(fù)方案 446.2.1靜態(tài)備份446.2.2動態(tài)備份 446.2.3恢復(fù)備份 446.3界面設(shè)計 456.4關(guān)鍵代碼48七、系

8、統(tǒng)測試方案507.1登錄測試507.2新建用戶測試 507.3更改用戶測試 507.4刪除用戶測試 507.5數(shù)據(jù)錄入測試 517.6查詢測試51八、系統(tǒng)主要功能和使用說明 51九、系統(tǒng)安裝說明52十、心得體會54參考文獻: 547一、相關(guān)技術(shù)介紹1.1 MySQLMySQL是最受歡迎的開源 SQL數(shù)據(jù)庫管理系統(tǒng),它由MySQIAB開發(fā)、發(fā)布和支持。MySQL 是一個快速的、多線程、多用戶和健壯的SQL數(shù)據(jù)庫服務(wù)器。MySQL服務(wù)器支持關(guān)鍵任務(wù)、重負載生產(chǎn)系統(tǒng)的使用,也可以將它嵌入到一個大配置(mass-deployed)的軟件中去。MySQL的特性:1)使用C和C+編寫,用眾多不同的編譯器進

9、行了測試,能夠工作在眾多不同的平臺上。2)使用 GNU Automake Autoconf 和 Libtool 進行移植。3)提供了用于 C C+、Eiffel 、Java、Perl、PHP Python、Ruby 和 Tcl 的 API。4)采用核心線程的完全多線程如果有多個CPU它能方便地使用這些 CPU5)提供了事務(wù)性和非事務(wù)性存儲引擎。6)使用了極快的“ B樹”磁盤表(MylSAM和索引壓縮。7)添加另一個存儲引擎相對簡單。如果打算為內(nèi)部數(shù)據(jù)庫添加一個SQL接口,該特性十分有用。8)極快的基于線程的內(nèi)存分配系統(tǒng)。9)通過使用優(yōu)化的“單掃描多連接”,能實現(xiàn)極快的連接。10)存儲器中的哈希

10、表用作臨時表。11)SQL函數(shù)是使用高度優(yōu)化的類庫實現(xiàn)的,運行很快。通常,在完成查詢初始化后,不存在存儲器分配。12)采用Purify (商業(yè)內(nèi)存溢出檢測器)以及GPL工具Valgrind 測試了 MySQL代碼。13)服務(wù)器可作為單獨程序運行在客戶端/服務(wù)器聯(lián)網(wǎng)環(huán)境下。它也可作為庫提供,可嵌入(鏈接)到獨立的應(yīng)用程序中。這類應(yīng)用程序可單獨使用,也能在網(wǎng)絡(luò)環(huán)境下使用。簡言之,MYSQ具有功能強,使用簡單,管理方便,運行速度快,可靠性高,安全保密 等特點。1.2 Borland C+Builder 集成開發(fā)環(huán)境Borla nd C+ Builder(以下簡稱 BCB)是 Borla nd 公司(

11、現(xiàn)更名為 In prise) 繼 Delphi 之后推出的又一個優(yōu)秀的可視化編程環(huán)境,它在32位Windows環(huán)境下為我們提供了一種極具吸引力的快速Windows應(yīng)用程序開發(fā)系統(tǒng)(RAD)。它基于最流行的面向?qū)ο蟪绦蛟O(shè)計語言C+,采用領(lǐng)先的數(shù)據(jù)庫技術(shù),并結(jié)合使用了圖形用戶界面(GUI)的許多先進特性和設(shè)計思想。VCL是可視化組件庫的簡稱,它是一個面向?qū)ο蟮暮瘮?shù)庫,完全支持所有面向?qū)ο缶幊痰臉藴矢拍钊缋^承、多態(tài)和封裝等。C+ Builder的集成開發(fā)環(huán)境提供了 120多個VCL組件,使開發(fā)人員不需太多編碼,就能夠?qū)崿F(xiàn)很多復(fù)雜的功能,體現(xiàn)了軟件的“重用性”原則。C+ Builder的用戶界面也非常

12、友好,易于使用,并且采用了停駐式(docki ng)工具條,可以自由組合集成開發(fā)環(huán)境窗口和工具條的排放方式。在編碼過程中,還可以使用CodeExplorer技術(shù)對源代碼進行管理。CodeCompletion技術(shù)使編譯器能夠自動列出VCL組件的可用屬性和方法供程序員選擇,而不必手工輸入冗長的代碼。C+Builder含有20多個數(shù)據(jù)感知控件。在許多情況下,甚至不須要編寫任何程序代碼,便可以開發(fā)一個復(fù)雜的應(yīng)用程序。C+Builder還提供了強大的 Borland數(shù)據(jù)庫引擎,這是一種非常成熟的數(shù)據(jù)庫連接技術(shù),它提供了3種訪問數(shù)據(jù)庫的方式:一是可以直接存取dBase、FoxPro、Paradox等文件型

13、數(shù)據(jù)庫生成的DB DBF文件;二是提供了標準的ODBC接口;三是提供了高效的 SQLLinks數(shù)據(jù)庫驅(qū)動程序,允許直接存取 Oracle、Informix、SyBase、 MSSQLServe、DB2和 In terBase 。此外,C+Builder 還提供了一組 ADC控件,使 C+Builder 編程人員不用依靠 BDE來創(chuàng)建應(yīng)用程序,可直接使用ADO存取數(shù)據(jù)。C+Builder率先引入了多層數(shù)據(jù)庫應(yīng)用模型,通過C+Builder提供的多層分布式應(yīng)用服務(wù)(MIDAS)可以輕松開發(fā)出高可靠性、高效率、高負載的分布式數(shù)據(jù)處理系統(tǒng)。此外,還 可以通過ActiveForm或InterBaseEx

14、press 為多層數(shù)據(jù)庫應(yīng)用程序創(chuàng)建基于Web的客戶端,這樣用戶通過普通的瀏覽器就可以與遠程數(shù)據(jù)庫系統(tǒng)進行交互。在C+cBuilder 6中,MIDAS更名為DataSnap、DataSnap強化了 MIDAS原有的功能,并改善了MIDAS的執(zhí)行效率,更方便使用。1.3 MyDAC組件庫MyDAC,全稱為 MySQL Data Access Components (MySQL 數(shù)據(jù)訪問組件),支持 Borland Delphi , C+ Builder和Kylix。它提供訪問 MySQL數(shù)據(jù)庫的一種方式, 可以代替標 準的 Borland Database Engine (BDE)或 dbEx

15、press。MyDAC 能夠通過 MySQL client 或 MySQL network protocol 工作。假如直接使用 MySQL protocol協(xié)議 MyDAC 不需要client library,僅需要 TCP/IP protocol。這個特征允許編譯真正 的瘦客戶數(shù)據(jù)庫應(yīng)用。在基于MySQL的client/server應(yīng)用中使用 BDE或dbExpress有些不足,許多情況下 BDE和dbExpress不能夠使用服務(wù)器的特殊特征,還有BDE必須容忍過多的資源使用,限制一個應(yīng)用程序的分發(fā)和管理。使用BDEMySQL <-> ODBC <-> BDE &l

16、t;-> Applicati on通過MySQL接口:MySQL <-> Client library <-> Application使用MySQL網(wǎng)絡(luò)協(xié)議:MySQLMyDAC Connection Flow Direct ModeMySQL <-> Applicati on二、需求分析2.1功能需求及用戶需求2.1.1 功能需求該系統(tǒng)主要分為三大功能:管理員功能、信息安全功能、一般用戶功能、報表生成。(1) 管理員功能:產(chǎn)品入庫登記、確認入庫信息、刪除庫內(nèi)信息、借出信息登記、產(chǎn)品 分類管理、添加人員、刪除人員、查詢庫內(nèi)信息。(2) 信息安全功能:人

17、員權(quán)限區(qū)分、事件記錄、數(shù)據(jù)警告、計劃備份、即時備份、數(shù)據(jù)恢復(fù);(3) 一般用戶功能:查詢庫內(nèi)信息、查詢出庫信息、查詢?nèi)霂煨畔ⅰ⑿薷谋居脩裘艽a;(4) 報表生成:庫存信息報表生成。2.1.2用戶需求根據(jù)用戶需求,該系統(tǒng)應(yīng)該實現(xiàn)以下功能:(1) 進、出庫管理。對進、出庫信息進行記錄。(2) 查詢功能。倉庫管理對查詢要求高,通過主菜單記錄當前操作用戶的用戶編號,保證了對進、出庫信息錄入負責(zé)人的確認。(3) 部門資料管理與庫存報表生成。資料管理包括了人員信息管理,財政支出信息管理, 以及各項業(yè)務(wù)單據(jù)的資料管理。報表主要分類為:日報表,月報表,銷售報表,入 庫報表等等。(4)由于計算機能存貯大量的數(shù)據(jù),

18、而且數(shù)據(jù)只要一次存入,便可多次重復(fù)使用,所以管理數(shù)據(jù)達到完整,統(tǒng)一,原始記錄能保證及時,準確。(5) 許多重復(fù)性的工作,都可由計算機去執(zhí)行,從而使管理人員從事務(wù)性工作解脫出來,真正變?yōu)閺氖乱恍┬畔⒌姆治觯袛啵瑳Q策等創(chuàng)造性的工作。2.2系統(tǒng)流圖2.3數(shù)據(jù)描述2.3.1數(shù)據(jù)字典2.3.1.1基本數(shù)據(jù)項及數(shù)據(jù)結(jié)構(gòu)零部件信息。包括的數(shù)據(jù)項有零件號、零件名稱、規(guī)格、單價、描述。倉庫信息。包括的數(shù)據(jù)項有倉庫號、已用庫存、庫存總量、負責(zé)人、電話號碼。 供應(yīng)商信息。包括的數(shù)據(jù)項有編號、供應(yīng)商、電話號碼、地址。部門信息。包括的數(shù)據(jù)項有部門號、名稱、電話。數(shù)據(jù)項名稱別名1簡述類型|長度取值范圍零件號零件的編號字

19、符型7第1位:進口 /國產(chǎn)(I/D)第2-4位:類別第5-7位:物資編號零件名稱零件的名稱字符型20-規(guī)格零件規(guī)格字符型10單價零件的單位價格貨幣型6默認計量單位:兀 :描述零件描述/說明文本型廠-T倉庫號倉庫的編號字符型3-已用庫存?zhèn)}庫已用存儲容量數(shù)值型6>0 :倉庫非空=0:空倉庫<0:不允許庫存總量倉庫總存儲容量數(shù)值型6>0 :物資存量=0:空倉庫<0:不允許負責(zé)人倉庫負責(zé)人字符型20-供應(yīng)商編號供應(yīng)商編號字符型3-供應(yīng)商供應(yīng)商名稱字符型20-地址供應(yīng)商聯(lián)系地址文本-部門號公司部門編號字符型3-部門名公司部門名稱字符型20-電話電話號碼字符型15-2.3.1.2數(shù)

20、據(jù)流條目名稱別名簡述來源去向入庫單入庫單位在把相應(yīng)的零件送人倉 庫時必須填寫的單據(jù)供應(yīng)商庫存出庫單領(lǐng)料人員從倉庫中領(lǐng)取零件時必 須填寫的單據(jù)庫存公司部門 客戶還庫單-零件使用后歸還入庫必須填寫的公司部門庫存單據(jù)需求單-對新零件需求所填與的單據(jù)公司部門庫存采購單-購買新零件所填寫的單據(jù)采購員供應(yīng)商2.3.1.3數(shù)據(jù)存儲條目名稱別名簡述組織方式查詢要求倉庫庫存1存放索引文件,以1 倉庫編號為關(guān) 鍵字要求立即查詢零件庫存存放索引文件,以要求立即查詢零件編號為關(guān)鍵字132.3.1.4加工條目加工名 零件入庫激發(fā)條件優(yōu)先級輸入輸出接收到普通合格庫存滿,合格入庫單零件成功入庫入庫單時加工邏輯根據(jù)庫存記錄L

21、oop:14If (入庫物資的數(shù)量+物資現(xiàn)有存量)=該物資庫存量臨界值 The n物資存入倉庫;物資現(xiàn)有存量=物資現(xiàn)有存量+入庫物資的數(shù)量;加工名 零件出庫Else物資庫存已足,If物資現(xiàn)有存量=該物資庫存量臨界值量臨界值;En dif ; 零件入庫; 統(tǒng)計倉庫庫存已用量;激發(fā)條件優(yōu)先級輸入輸出接收到1普通合格庫存量不足,合格出庫單零件成功出庫出庫單時加工邏輯根據(jù)庫存記錄Loop:零件是否存在?是:If需求單物資的數(shù)量 該物資庫存量的臨界值Then零件出庫物資現(xiàn)有存量=物資現(xiàn)有存量-出庫零件的數(shù)量;Else物資短缺,If物資現(xiàn)有存量 =物資最少存量The n結(jié)束,出庫失敗En dif ;調(diào)整入

22、庫單;goto loop,直到(物資現(xiàn)有存量-出庫零件的數(shù)量)=該物資庫 存量臨界值;Endif ;否:零件不存在,goto loop;零件入庫;統(tǒng)計倉庫庫存已用量;2.3.2數(shù)據(jù)流圖1)本系統(tǒng)的頂層數(shù)據(jù)流圖管理員供應(yīng)商2)細化后的數(shù)據(jù)流圖153)貨物入庫信息管理細化有效單據(jù)4)貨物出庫信息管理細化零件庫存16#2.4安全性和完整性要求2.4.1安全性要求系統(tǒng)安全性要求至少達到 TCSEC (TDI )的C1級。即只提供了非常初級的自主安全保護。能夠?qū)崿F(xiàn)對用戶和數(shù)據(jù)的分離,進行自主存取控制(DAC),保護或限制用戶權(quán)限的傳播。實行用戶標識與鑒別,具有數(shù)據(jù)備份和日志審計功能。2.4.2完整性要求

23、每個關(guān)系中都至少要有一個主鍵,并且都有一個聚集索引( Clustered Index )。關(guān)系與 關(guān)系之間通過主外鍵關(guān)聯(lián)。定義屬性上的約束條件,定義觸發(fā)器。三、概念結(jié)構(gòu)設(shè)計3)出庫實體 E-R圖:17187)實體和實體之間的關(guān)系圖如圖所示8)倉庫管理E-R圖如圖所示四、邏輯結(jié)構(gòu)設(shè)計4.1關(guān)系模型設(shè)計1)倉庫表 storehouse20NO.字段名代碼類型約束1倉庫號stolDChar(3)主鍵2已用庫存Used_volumeSmalli nt非空,默認 0, unsigned, <=All_volume3庫存總量All volumeSmalli nt非空,默認 10000,unsigne

24、d4負責(zé)人prin cipalVarchar(20)非空5電話號碼stoTELVarchar(15)2) 零件表partsNO.字段名代碼類型約束1零件號parIDChar(7)主鍵2名稱partVarchar(20)非空3規(guī)格specChar(10)4單價priceDecimal(6,2)非空,默認0, unsigned5計量單位men suratio nChar(4)非空,默認“元”6描述descripti onText3) 供應(yīng)商 supplierNO.字段名代碼類型約束1編號supIDChar(3)主鍵2供應(yīng)商supNameVarchar(20)非空3電話號碼supTELVarchar

25、(15)非空4地址addressText4) 部門表deptNO.字段名代碼類型約束1部門號depIDChar(3)主鍵2名稱depNameVarchar(20)非空3電話depTELVarchar(15)5) 庫存表storageNO.字段名代碼類型約束1倉庫號stoIDChar(3)主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級聯(lián)刪除、更新2零件號parID |Char(7)主鍵,與parts表中的parID夕卜鍵關(guān)聯(lián),級聯(lián)刪除、更新3現(xiàn)有存量Now_volumeSmalli nt非空,默認 0, >=Min_volume , <=Max_volume4最小存量Min

26、_volumeSmalli nt非空,默認0, unsigned5最大存量Max_volumeSmalli nt非空,默認0, unsigned6) 供應(yīng)表supplyNO.字段名供應(yīng)商號代碼supID類型Char(3)約束主鍵,與supplier表中的supID外鍵關(guān)聯(lián),2零件號parlD |Char(7)級聯(lián)刪除、更新主鍵,與parts表中的parID外鍵關(guān)聯(lián),級聯(lián)刪除、更新3 供應(yīng)量4 供應(yīng)時間SupVolumeSmallint非空,默認 0, unsignedsupDateTimestamp 非空22#7) 部門需求表demandNO.字段名代碼零件號 parID類型約束Char(7)

27、主鍵,與parts表中的parID外鍵關(guān)聯(lián),#級聯(lián)刪除、更新2 部門號 depIDChar(3)主鍵,與dept表中的depID外鍵關(guān)聯(lián),#級聯(lián)更新、刪除需求數(shù)量開始時間demVolumeSmalli ntstartTimeTimestamp非空,默認0,unsigned非空5結(jié)束時間en dTimeTimestamp非空#08) 零件歸還表 restoreNO.字段名編號倉庫號代碼類型resIDSmalli ntstolDChar2 零件號 parlDChar3 部門號 depIDChar約束主鍵,AUTO_INCREMENT主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級聯(lián)刪除、更

28、新主鍵,與parts表中的parID夕卜鍵關(guān)聯(lián),級聯(lián)更新、刪除主鍵,與dept表中的depID夕卜鍵關(guān)聯(lián),級聯(lián)更新、刪除歸還數(shù)量resVolumeSmalli nt經(jīng)手人歸還者cmakerreturner歸還時間resDateVarchar(20)Varchar(20)Timestamp非空,默認0, unsigned非空非空非空230#09)零部件采購計劃表 stockNO.字段名代碼類型約束1零件號parIDChar(7)主鍵,與parts表中的parID夕卜鍵關(guān)聯(lián),級聯(lián)更新、刪除2采購量stoVolumeSmalli ntJ非空,默認0, unsigned3供應(yīng)商號supIDChar(3

29、)與supplier表中的supID外鍵關(guān)聯(lián)4采購時間stoDateTimestamp主鍵5采購員buyerVarchar(20)10)入庫表 warehousing#NO.字段名代碼類型約束編號inIDSmalli nt主鍵,AUTO_INCREMENT倉庫號stolDChar主鍵,與storehouse表中的stolD外鍵關(guān)聯(lián),級聯(lián)刪除、更新供應(yīng)商號supIDChar非空,與supplier表中的supID外鍵關(guān)聯(lián)零件號parlDChar主鍵,與parts表中的parlD外鍵關(guān)聯(lián),級聯(lián)更新、刪除入庫數(shù)量inV olumeSmalli nt非空,默認0, unsigned經(jīng)手人cmakerV

30、archar(20)非空入庫時間in DateTimestamp非空,默認當前時間11)出庫表 stockoutNO.字段名代碼類型約束編號outIDsmalli nt主鍵,,AUTO_INCREMENT倉庫號stoIDChar(3)主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級聯(lián)刪除、更新零件號parIDChar(7)主鍵,與parts表中的parID外鍵關(guān)聯(lián),級聯(lián)更新、刪除出庫數(shù)量outV olumeSmalli nt非空,默認0,unsigned使用者userVarchar(20)非空經(jīng)手人cmakerVarchar(20)非空領(lǐng)取人receiptorVarchar(20)非空

31、出庫時間outDateTimestamp非空,默認當前時間4.2用戶子模式設(shè)計1) 倉庫信息視圖 storehouse_view25NO.字段名代碼類型備注1倉庫號stolDChar(3)連 storehouse 表2已用庫存Used_volumeInt連 storehouse 表3庫存總量All volumeInt連 storehouse 表4負責(zé)人prin cipalVarchar(20)連 storehouse 表6電話號碼stoTELVarchar(15)連 storehouse 表2)零部件庫存視圖parts_storage_viewNO.字段名代碼類型備注1倉庫號stoIDChar

32、(3)連 storage 表2零件號parIDChar(7)連parts表3名稱partVarchar(20)連parts表4規(guī)格specChar(10)連parts表5單價priceDecimal(6,2)連parts表6計量單位men suratio nChar(4)連parts表7現(xiàn)有存量Now_volumeSmalli nt連 storage 表8最小存量Min_volumeSmalli nt連 storage 表9取大存量Max_volumeSmalli nt連 storage 表3) 零部件入庫視圖 warehousing_viewNO.字段名代碼類型I備注0倉金庫號stoIDCh

33、ar(3)連 warehousing 表1零件號parIDChar(7)連 parts 表,更新 warehousing 表的 parID項2供應(yīng)商號supIDChar(3)連 supplier 表3供應(yīng)商supNameVarchar(20)連 supplier 表4電話supTELVarchar(15)連 supplier 表5零件名partVarchar(20)連parts表NO.字段名代碼類型備注6規(guī)格specChar(10)連parts表7單價priceDecimal(6,2)連parts表8計量單位men suratio nChar(4)連parts表9入庫數(shù)量in VolumeSm

34、alli nt連 warehousing 表,更新parts_storage_view 視圖的 Now_volume項10描述descripti onText連parts表11經(jīng)手人cmakerVarchar(20)連 warehousing 表12入庫時間in DateTimestamp連 warehousing 表4) 零部件出庫視圖 stockout_viewNO.字段名代碼倉庫號 stolD |類型Char(3)備注連 stockout 表零件號parlDChar(7)連parts表,更新stockout表的parID項出庫數(shù)量outVolumeJSmalli nt連 stockout

35、表,更新 storage 表的27#no w volume使用單位userVarchar(20)連 stockout 表經(jīng)手人cmakerVarchar(20)連 stockout 表領(lǐng)取人 receiptorVarchar(20) 連 stockout 表出庫時間outDateTimestamp 連 stockout 表#5)零部件計劃采購視圖stock_viewNO.字段名零件號代碼類型備注采購量供應(yīng)商號電話parIDChar(7)連stock表stoVolumeSmalli nt連stock表supIDChar(3)連 supplier 表,更新 stock 表的 supNamesupT

36、ELVarchar(15) 連 supplier 表#NO.字段名代碼類型備注價格priceDecimal(6,2)連parts表計量單位men suratio nChar連parts表規(guī)格specChar(10)連parts表采購時間stoDateTimestamp連stock表采購員buyerVarchar(20)連stock表6) 部門需求視圖 demand_viewNO.字段名代碼類型備注零件號parIDChar(7)連dema nd表部門號depIDChar(3)連dema nd表需求數(shù)量demVolumeSmalli nt連dema nd表開始時間startTimeTimestam

37、p連dema nd表結(jié)束時間en dTimeTimestamp連dema nd表28#7) 供應(yīng)商零件供應(yīng)視圖supply_viewNO.字段名代碼類型備注1供應(yīng)商號supIDChar(3)連 supplier 表2零件號parIDChar(7)連supply表3單價priceDecimal(6,2)連parts表4計十量單位men suratio nChar(4)連parts表5規(guī)格specChar(10)連parts表6供應(yīng)量supVolumeSmalli nt連supply表7供應(yīng)時間supDateTimestamp連supply表8電話supTELVarchar(15)連 suppli

38、er 表8)零部件歸還入庫視圖restore_viewNO.字段名代碼類型備注0倉庫號stolDChar(3)連 restore 表1零件號parlDChar(7)連 restore 表2部門號depIDChar(3)連 restore 表31歸還數(shù)量resVolumeSmalli nt連 restore 表4經(jīng)手人cmakerVarchar(20)連 restore 表5歸還者returnerVarchar(20)連 restore 表61歸還時間resDateTimestamp連 restore 表4.3系統(tǒng)結(jié)構(gòu)圖4.4安全性和完整性設(shè)計4.4.1安全性設(shè)計用戶類別有:信息查詢員inf,倉

39、庫管理員dba和系統(tǒng)管理員sys。他們 的權(quán)限分別為:信息查詢員inf:只有信息查詢的權(quán)限。倉庫管理員dba:具有信息查詢,更新,刪除,報單打印權(quán)限。系統(tǒng)管理員sys:除具有倉庫管理員dba所有權(quán)限外,還具有用戶管理, 數(shù)據(jù)恢復(fù)備份。4.4.2完整性設(shè)計各表中各個字段的完整性約束已在“4.1關(guān)系模型設(shè)計”中各表的“約束”列做了詳細說明。觸發(fā)子設(shè)計:1)零件入庫觸發(fā)子設(shè)置觸發(fā)子 parts_warehousing_update,當 warehousing表插入或更新一條新記 錄后,更新 storage表的零件存量 Now_volume 和更新 storehouse表的已用存量 Used_volu

40、me。設(shè)置觸發(fā)子 parts_warehousing_delete,當 warehousing 表刪除一條(錯誤)記 錄前,更新 storage表的零件存量 Now_volume和更新 storehouse表的已用存量 Used_volume2)零件出庫觸發(fā)子設(shè)置觸發(fā)子 parts_stockout_update,當stockout表插入或更新一條新記錄后, 更新storage表的零件存量 Now_volume 和更新storehouse表的 已用存量 Used_volume。設(shè)置觸發(fā)子parts_warehousing_delete,當stockout表刪除一條(錯誤)記錄前, 更新stor

41、age表的零件存量 Now_volume 和更新storehouse表的 已用存量 Used_volume3)零件歸還入庫觸發(fā)子設(shè)置觸發(fā)子 parts_restore_update,當restore表插入或更新一條新記錄后,更新storage表的零件存量 Now_volume 和更新storehouse表的已用存量 Used_volume。設(shè)置觸發(fā)子parts_restore_delete,當restore表刪除一條(錯誤)記錄前,更新storage表的零件存量 Now_volume和更新storehouse表的已用存量 Used_volume五、數(shù)據(jù)庫物理設(shè)計5.1建立索引各表索引設(shè)計如下:

42、表名索引字段索引類型排列次序唯一值零件零件號聚集索引升序V零件名非聚集索引升序1供應(yīng)商供應(yīng)商號聚集索引升序V供應(yīng)商名非聚集索引升序部門部門號聚集索引升序V部門名非聚集索引升序庫存零件號非聚集索引升序供應(yīng)供應(yīng)商號非聚集索引升序零件號非聚集索引升序供應(yīng)時間聚集索引降序部門需求零件號非聚集索引升序部門號非聚集索引升序開始時間非聚集索引降序結(jié)束時間非聚集索引降序零件歸還歸還時間聚集索引降序零件號非聚集索引升序部門號非聚集索引升序零件采購零件號非聚集索引升序采購時間聚集索引降序零件入庫入庫時間聚集索引降序零件號非聚集索引升序零件出庫出庫時間聚集索引降序零件號非聚集索引升序5.2確定數(shù)據(jù)的存放位置該數(shù)據(jù)庫

43、的數(shù)據(jù)文件都存放在 MySQ啲安裝目錄的/data/warehouse文件夾 下5.3確定系統(tǒng)配置1) 運行環(huán)境操作系統(tǒng): Windows 2003 或 WindowsXP,以上數(shù)據(jù)庫系統(tǒng):5.1.29-rc-commu nity-log MySQL Commu nity Server (GPL)開發(fā)平臺:C+Builder 6.0+MyDAC 5.70.0.42 for C+Builder 62) 數(shù)據(jù)庫配置#適合于內(nèi)存256M-512M的用戶。用于服務(wù)器搭建clie ntport=3306mysqldefault-character-set=gbkmysqldport=3306basedi

44、r="D:/PC_webserver/mysql/" datadir="D:/PC_webserver/mysql/Data/" default-character-set=gbkdefault-storage-e ngi ne=INNODB sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREA TE_USER,NO_ENGINE_SUBmax_c onnection s=447query_cache_size=12Mtable_cache=128tmp_table_size=8Mthread_cache_siz

45、e=4myisam_max_sort_file_size=100Gmyisam_max_extra_sort_file_size=100Gmyisam_sort_buffer_size=16Mkey_buffer_size=32Mread_buffer_size=64Kread_r nd_buffer_size=256Ksort_buffer_size=2Minno db_data_home_dir="D:/PC_webserver/mSTITUTION"ysql/datafiles/"inno db_additi on al_mem_pool_size=2Min

46、nodb flush log at trx commit=1inno db_log_buffer_size=1Minno db_buffer_pool_size=29M5.4模塊設(shè)計倉庫管理HIPO圖inno db_thread_c on curre ncy=8log=D:PC_webservermysqllogsql.loglog-output=FILE倉庫管理輸入處理輸出出庫單入庫單還庫單計劃采購單六、數(shù)據(jù)庫實施6.1創(chuàng)建數(shù)據(jù)庫及數(shù)據(jù)庫對象SQL腳本/*MySQL Data TransferSource Host: localhostSource Database: warehouseTa

47、rget Host: localhostTarget Database: warehouseDate: 2009-1-6 0:01:49*/SET FOREIGN_KEY_CHECKS=0;-Table structure for demandCREATE TABLE 'demand' ('parlD' char(7) NOT NULL COMMENT ' 零件號','depID' char(3) NOT NULL COMMENT ' 部門號','demVolume' smallint(6) unsigned NOT NULL DEF AUL T '0' COMMENT '需求數(shù)量','startTime' timestamp NOT NULL DEFAUL T CURRENT_TIMESTAMP COMMENT '開始時間:'endTime' timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT ' 結(jié)束時間:PRIMARY KEY (、parlD',

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論