倉(cāng)庫(kù)管理系統(tǒng)課程設(shè)計(jì)報(bào)告._第1頁(yè)
倉(cāng)庫(kù)管理系統(tǒng)課程設(shè)計(jì)報(bào)告._第2頁(yè)
倉(cāng)庫(kù)管理系統(tǒng)課程設(shè)計(jì)報(bào)告._第3頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)(論文)課程名稱(chēng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)題目名稱(chēng)倉(cāng)庫(kù)管理系統(tǒng)專(zhuān)業(yè)班級(jí)一、課程設(shè)計(jì)的內(nèi)容1、學(xué)習(xí)與實(shí)踐數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)流程;2 、學(xué)習(xí)使用某一種數(shù)據(jù)庫(kù)服務(wù),學(xué)會(huì)數(shù)據(jù)庫(kù)應(yīng)用程序編程,安裝配置系統(tǒng)開(kāi)發(fā)環(huán)境;3 、設(shè)計(jì)和實(shí)現(xiàn)倉(cāng)庫(kù)管理系統(tǒng);4、撰寫(xiě)課程設(shè)計(jì)報(bào)告。二、課程設(shè)計(jì)的要求與數(shù)據(jù)系統(tǒng)應(yīng)該實(shí)現(xiàn)以下功能:(1) 進(jìn)、出庫(kù)管理。對(duì)進(jìn)、出庫(kù)信息進(jìn)行記錄。查詢(xún)功能。倉(cāng)庫(kù)管理對(duì)查詢(xún)要求高,通過(guò)主菜單記錄當(dāng)前操作用戶(hù)的用戶(hù)編號(hào),保證了對(duì)進(jìn)、出庫(kù)信息錄入負(fù)責(zé)人的確認(rèn)。(2) 部門(mén)資料管理與庫(kù)存報(bào)表生成。資料管理包括了人員信息管理,財(cái)政支出信息管理,以及各項(xiàng)業(yè)務(wù)單據(jù)的資料管理。報(bào)表主要分類(lèi)為:日?qǐng)?bào)表,月報(bào)表,銷(xiāo)售報(bào)

2、表,入庫(kù)報(bào)表等等。由于計(jì)算機(jī)能存貯大量的數(shù)據(jù),而且數(shù)據(jù)只要一次存入,便可多次重復(fù)使用,所以管理數(shù)據(jù)達(dá)到完整,統(tǒng)一,原始記錄能保證及時(shí),準(zhǔn)確。(3) 許多重復(fù)性的工作,都可由計(jì)算機(jī)去執(zhí)行,從而使管理人員從事務(wù)性工作解脫出來(lái),真正變?yōu)閺氖乱恍┬畔⒌姆治?,判斷,決策等創(chuàng)造性的工作。數(shù)據(jù)自己自行編造測(cè)試。論文要求結(jié)構(gòu)嚴(yán)謹(jǐn)、格式規(guī)范,內(nèi)容正確、文字通順。三、課程設(shè)計(jì)應(yīng)完成的工作該系統(tǒng)主要分為三大功能:管理員功能、信息安全功能、一般用戶(hù)功能、報(bào)表生成。(1) 管理員功能:產(chǎn)品入庫(kù)登記、確認(rèn)入庫(kù)信息、刪除庫(kù)內(nèi)信息、借出信息登記、產(chǎn)品分類(lèi)管理、添加人員、刪除人員、查詢(xún)庫(kù)內(nèi)信息。(2) 信息安全功能:人員權(quán)限區(qū)

3、分、事件記錄、數(shù)據(jù)警告、數(shù)據(jù)備份、數(shù)據(jù)恢復(fù);(3) 一般用戶(hù)功能:查詢(xún)庫(kù)內(nèi)信息、查詢(xún)出庫(kù)信息、查詢(xún)?nèi)霂?kù)信息、修改本用戶(hù)密碼;(4) 報(bào)表生成:庫(kù)存信息報(bào)表生成。四、課程設(shè)計(jì)進(jìn)程安排序號(hào)設(shè)計(jì)(論文)各階段名稱(chēng)地點(diǎn)起止日期1選定本次課程設(shè)計(jì)及報(bào)告的研究課題宿舍2014.6.152對(duì)研究課題進(jìn)行調(diào)查并做出詳細(xì)的需求分析宿舍2014.6.183收集資料和參考文獻(xiàn)圖書(shū)館2014.6.194認(rèn)真閱讀和學(xué)習(xí)資料、文獻(xiàn)并做出初步構(gòu)思宿舍2014.6.205制定出整個(gè)系統(tǒng)的設(shè)計(jì)構(gòu)想、設(shè)計(jì)思路和方法宿舍2014.6.206進(jìn)行系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)和編與程序代碼宿舍2014.6.217對(duì)系統(tǒng)進(jìn)行測(cè)試和系統(tǒng)調(diào)試宿舍201

4、4.6.218元成整個(gè)系統(tǒng)的開(kāi)發(fā)并進(jìn)行系統(tǒng)維護(hù)宿舍2014.6.219撰寫(xiě)課程設(shè)計(jì)報(bào)告宿舍2014.6.2210最終完成系統(tǒng)修改、論文撰寫(xiě)和表格填寫(xiě)宿舍2014.3.2211上交課程設(shè)計(jì)報(bào)告、系統(tǒng)答辯教學(xué)樓2014.6.22五、應(yīng)收集的資料及主要參考文獻(xiàn)MySQL5.1參考手冊(cè)http:/dev.mysql.eom/doc/refman/5.1/zh/introduction.html#featuresD學(xué)習(xí)MySQL(影印版)SeyedM.M."Saied"Tabagbogbi&HugbE.Williams東南大學(xué)出版社2007.6C+Builder程序員成長(zhǎng)攻略

5、蒙祖強(qiáng)龔濤等編著北京:中國(guó)水利水電出版社2007.1發(fā)出任務(wù)書(shū)日期:2014年6月1日指導(dǎo)教師簽名:汪麗琴計(jì)劃完成日期:2014年6月22日基層教學(xué)單位責(zé)任人簽章:主管院長(zhǎng)簽章:目錄相關(guān)技術(shù)介紹61.1 MySQL61.2 BorlandC+Builder集成開(kāi)發(fā)環(huán)境71.3 MyDAC組件庫(kù)8需求分析92.1.1 功能需求及用戶(hù)需求9功能需求9用戶(hù)需求101.2 系統(tǒng)流圖102.3數(shù)據(jù)描述112.3.1數(shù)據(jù)字典基本數(shù)據(jù)項(xiàng)及數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)流條目數(shù)據(jù)存儲(chǔ)條目加工條目122.3.2數(shù)據(jù)流圖132.4安全性和完整性要求152.4.

6、1安全性要求152.4.2完整性要求15三、概念結(jié)構(gòu)設(shè)計(jì)15四、邏輯結(jié)構(gòu)設(shè)計(jì)184.1關(guān)系模型設(shè)計(jì)184.2用戶(hù)子模式設(shè)計(jì)224.3系統(tǒng)結(jié)構(gòu)圖254.4安全性和完整性設(shè)計(jì)264.4.1安全性設(shè)計(jì)264.4.2完整性設(shè)計(jì)26五、數(shù)據(jù)庫(kù)物理設(shè)計(jì)275.1建立索引275.2確定數(shù)據(jù)的存放位置285.3確定系統(tǒng)配置285.4模塊設(shè)計(jì)29六、數(shù)據(jù)庫(kù)實(shí)施306.1創(chuàng)建數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象SQL腳本306.2數(shù)據(jù)庫(kù)備份和恢復(fù)方案436.2.1靜態(tài)備份436.2.2動(dòng)態(tài)備份446.2.3恢復(fù)備份446.3界面設(shè)計(jì)446.4關(guān)鍵代碼47七、系統(tǒng)測(cè)試方案497.1登錄測(cè)試507.2新建用戶(hù)測(cè)試507.3更改用戶(hù)測(cè)試

7、507.4刪除用戶(hù)測(cè)試507.5數(shù)據(jù)錄入測(cè)試507.6查詢(xún)測(cè)試51八、系統(tǒng)主要功能和使用說(shuō)明51九、系統(tǒng)安裝說(shuō)明52十、心得體會(huì)54參考文獻(xiàn):541.1 一、相關(guān)技術(shù)介紹MySQLMySQ亳最受歡迎的開(kāi)源SQL數(shù)據(jù)庫(kù)管理系統(tǒng),它由MySQLAB開(kāi)發(fā)、發(fā)布和支持。MySQL是一個(gè)快速的、多線程、多用戶(hù)和健壯的SQL數(shù)據(jù)庫(kù)服務(wù)器。MySQLB務(wù)器支持關(guān)鍵任務(wù)、重負(fù)載生產(chǎn)系統(tǒng)的使用,也可以將它嵌入到一個(gè)大配置(mass-deployed)的軟件中去。MySQL勺特性:1) 使用C和C+琬寫(xiě),用眾多不同的編譯器進(jìn)行了測(cè)試,能夠工作在眾多不同的平臺(tái)上。2) 使用GNUAutomaksAutoconf和L

8、ibtool進(jìn)行移植。3) 提供了用于GC+、Eiffel、Java、Perl、PHPPython、Ruby和Tcl的API。4)采用核心線程的完全多線程如果有多個(gè)CPU它能方便地使用這些CPU5)提供了事務(wù)性和非事務(wù)性存儲(chǔ)引擎。6)使用了極快的“B樹(shù)”磁盤(pán)表(MylSAM和索引壓縮。7)添加另一個(gè)存儲(chǔ)引擎相對(duì)簡(jiǎn)單。如果打算為內(nèi)部數(shù)據(jù)庫(kù)添加一個(gè)SQL接口,該特性十分有用。8)極快的基于線程的內(nèi)存分配系統(tǒng)。9)通過(guò)使用優(yōu)化的“單掃描多連接”,能實(shí)現(xiàn)極快的連接。10)存儲(chǔ)器中的哈希表用作臨時(shí)表。11)SQL函數(shù)是使用高度優(yōu)化的類(lèi)庫(kù)實(shí)現(xiàn)的,運(yùn)行很快。通常,在完成查詢(xún)初始化后,不存在存儲(chǔ)器分配。12)

9、采用Purify(商業(yè)內(nèi)存溢出檢測(cè)器)以及GPL工具Valgrind測(cè)試了MySQL弋碼。13)服務(wù)器可作為單獨(dú)程序運(yùn)行在客戶(hù)端/服務(wù)器聯(lián)網(wǎng)環(huán)境下。它也可作為庫(kù)提供,可嵌入(鏈接)到獨(dú)立的應(yīng)用程序中。這類(lèi)應(yīng)用程序可單獨(dú)使用,也能在網(wǎng)絡(luò)環(huán)境下使用。簡(jiǎn)言之,MYSQLI有功能強(qiáng),使用簡(jiǎn)單,管理方便,運(yùn)行速度快,可靠性高,安全保密等特點(diǎn)。1.2 BorlandC+Builder集成開(kāi)發(fā)環(huán)境BorlandC+Builder(以下簡(jiǎn)稱(chēng)BCB是Borland公司(現(xiàn)更名為Inprise)繼Delphi之后推出的又一個(gè)優(yōu)秀的可視化編程環(huán)境,它在32位Windows環(huán)境下為我們提供了一種極具吸引力的快速Win

10、dows應(yīng)用程序開(kāi)發(fā)系統(tǒng)(RAD)。它基于最流行的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言C+,采用領(lǐng)先的數(shù)據(jù)庫(kù)技術(shù),并結(jié)合使用了圖形用戶(hù)界面(GUI)的許多先進(jìn)特性和設(shè)計(jì)思想。VCL是可視化組件庫(kù)的簡(jiǎn)稱(chēng),它是一個(gè)面向?qū)ο蟮暮瘮?shù)庫(kù),完全支持所有面向?qū)ο缶幊痰臉?biāo)準(zhǔn)概念如繼承、多態(tài)和封裝等。C+Builder的集成開(kāi)發(fā)環(huán)境提供了120多個(gè)VCL組件,使開(kāi)發(fā)人員不需太多編碼,就能夠?qū)崿F(xiàn)很多復(fù)雜的功能,體現(xiàn)了軟件的“重用性”原則。C+Builder的用戶(hù)界面也非常友好,易于使用,并且采用了停駐式(docking)工具條,可以自由組合集成開(kāi)發(fā)環(huán)境窗口和工具條的排放方式。在編碼過(guò)程中,還可以使用CodeExplorer技術(shù)對(duì)

11、源代碼進(jìn)行管理。CodeCompletion技術(shù)使編譯器能夠自動(dòng)列出VCL組件的可用屬性和方法供程序員選擇,而不必手工輸入冗長(zhǎng)的代碼。C+Builder含有20多個(gè)數(shù)據(jù)感知控件。在許多情況下,甚至不須要編寫(xiě)任何程序代碼,便可以開(kāi)發(fā)一個(gè)復(fù)雜的應(yīng)用程序。C+Builder還提供了強(qiáng)大的Borland數(shù)據(jù)庫(kù)引擎,這是一種非常成熟的數(shù)據(jù)庫(kù)連接技術(shù),它提供了3種訪問(wèn)數(shù)據(jù)庫(kù)的方式:一是可以直接存取dBase、FoxPro、Paradox等文件型數(shù)據(jù)庫(kù)生成的DBDBF文件;二是提供了標(biāo)準(zhǔn)的ODB成口;三是提供了高效的SQLLinks數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序,允許直接存取Oracle、Informix、SyBase、M

12、SSQLServeKDB曹日InterBase。此外,C+Builder還提供了一組ADW件,使C+Builder編程人員不用依靠BDE創(chuàng)建應(yīng)用程序,可直接使用ADC存取數(shù)據(jù)。C+Builder率先引入了多層數(shù)據(jù)庫(kù)應(yīng)用模型,通過(guò)C+Builder提供的多層分布式應(yīng)用服務(wù)(MIDAS)可以輕松開(kāi)發(fā)出高可靠性、高效率、高負(fù)載的分布式數(shù)據(jù)處理系統(tǒng)。此外,還可以通過(guò)ActiveForm或InterBaseExpress為多層數(shù)據(jù)庫(kù)應(yīng)用程序創(chuàng)建基于Web的客戶(hù)端,這樣用戶(hù)通過(guò)普通的瀏覽器就可以與遠(yuǎn)程數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行交互。在C+cBuilder6中,MIDAS更名為DataSnap、DataSnap強(qiáng)化了M

13、IDAS原有的功能,并改善了MIDAS的執(zhí)行效率,更方便使用。1.3 MyDAC組件庫(kù)MyDAC,全稱(chēng)為MySQLDataAccessComponents(MySQL數(shù)據(jù)訪問(wèn)組件),支持BorlandDelphi,C+Builder和Kylix。它提供訪問(wèn)MySQL數(shù)據(jù)庫(kù)的一種方式,可以代替標(biāo)準(zhǔn)的BorlandDatabaseEngine(BDE)或dbExpress。MyDAC能夠通過(guò)MySQLclient或MySQLnetworkprotocol工作。假如直接使用MySQLprotocol協(xié)議MyDAC不需要clientlibrary,僅需要TCP/IPprotocolo這個(gè)特征允許編譯真

14、正的瘦客戶(hù)數(shù)據(jù)庫(kù)應(yīng)用。在基于MySQL的client/server應(yīng)用中使用BDE或dbExpress有些不足,許多情況下BDE和dbExpress不能夠使用服務(wù)器的特殊特征,還有BDE必須容忍過(guò)多的資源使用,限制一個(gè)應(yīng)用程序的分發(fā)和管理。使用BDEBDEConnectionProtocolMySQL<->ODBC<->BDE<->Application通過(guò)MySQ成口:響心岫*_H咽叫*MySQLMyDACConnectionFlowClientModeMySQL<->Clientlibrary<->Application使用MyS

15、QLMJ絡(luò)協(xié)議:ApplKOllonApplKOllonMSQLMyDACConnectionFlowDirectModeMySQL<->Application二、需求分析2.1功能需求及用戶(hù)需求2.1.1功能需求該系統(tǒng)主要分為三大功能:管理員功能、信息安全功能、一般用戶(hù)功能、報(bào)表生成。(1) 管理員功能:產(chǎn)品入庫(kù)登記、確認(rèn)入庫(kù)信息、刪除庫(kù)內(nèi)信息、借出信息登記、產(chǎn)品分類(lèi)管理、添加人員、刪除人員、查詢(xún)庫(kù)內(nèi)信息。信息安全功能:人員權(quán)限區(qū)分、事件記錄、數(shù)據(jù)警告、計(jì)劃備份、即時(shí)份、數(shù)據(jù)恢復(fù);(2) 一般用戶(hù)功能:查詢(xún)庫(kù)內(nèi)信息、查詢(xún)出庫(kù)信息、查詢(xún)?nèi)霂?kù)信息、修改本用戶(hù)密碼;(3) 報(bào)表生成:庫(kù)

16、存信息報(bào)表生成。2.1.2用戶(hù)需求根據(jù)用戶(hù)需求,該系統(tǒng)應(yīng)該實(shí)現(xiàn)以下功能:(1) 進(jìn)、出庫(kù)管理。對(duì)進(jìn)、出庫(kù)信息進(jìn)行記錄。查詢(xún)功能。倉(cāng)庫(kù)管理對(duì)查詢(xún)要求高,通過(guò)主菜單記錄當(dāng)前操作用戶(hù)的用戶(hù)編號(hào),保證了對(duì)進(jìn)、出庫(kù)信息錄入負(fù)責(zé)人的確認(rèn)。(2) 部門(mén)資料管理與庫(kù)存報(bào)表生成。資料管理包括了人員信息管理,財(cái)政支出信息管理,以及各項(xiàng)業(yè)務(wù)單據(jù)的資料管理。報(bào)表主要分類(lèi)為:日?qǐng)?bào)表,月報(bào)表,銷(xiāo)售報(bào)表,入庫(kù)報(bào)表等等。由于計(jì)算機(jī)能存貯大量的數(shù)據(jù),而且數(shù)據(jù)只要一次存入,便可多次重復(fù)使用,所以管理數(shù)據(jù)達(dá)到完整,統(tǒng)一,原始記錄能保證及時(shí),準(zhǔn)確。(3) 許多重復(fù)性的工作,都可由計(jì)算機(jī)去執(zhí)行,從而使管理人員從事務(wù)性工作解脫出來(lái),真正

17、變?yōu)閺氖乱恍┬畔⒌姆治觯袛?,決策等創(chuàng)造性的工作。2.2系統(tǒng)流圖庫(kù)存報(bào)表供貨商出入庫(kù)2.3數(shù)據(jù)描述2.3.1數(shù)據(jù)字典基本數(shù)據(jù)項(xiàng)及數(shù)據(jù)結(jié)構(gòu)零部件信息。包括的數(shù)據(jù)項(xiàng)有零件號(hào)、零件名稱(chēng)、規(guī)格、單價(jià)、描述。倉(cāng)庫(kù)信息。包括的數(shù)據(jù)項(xiàng)有倉(cāng)庫(kù)號(hào)、已用庫(kù)存、庫(kù)存總量、負(fù)責(zé)人、電話(huà)號(hào)碼。I,I1,供應(yīng)商信息。包括的數(shù)據(jù)項(xiàng)有編號(hào)、供應(yīng)商、電話(huà)號(hào)碼、地址。部門(mén)信息。包括的數(shù)據(jù)項(xiàng)有部門(mén)號(hào)、名稱(chēng)、電話(huà)。數(shù)據(jù)項(xiàng)名稱(chēng)惻名1簡(jiǎn)述類(lèi)型;長(zhǎng)度取值范圍零件號(hào)奇件的編勺字符型7第1位:進(jìn)口/國(guó)產(chǎn)(I/D)第2-4位:類(lèi)別第5-7位:物資編號(hào)零件名稱(chēng)零件的名稱(chēng)字符型20-規(guī)格零件規(guī)格字符型10單價(jià)零件的單位價(jià)格貨幣型】6默

18、認(rèn)計(jì)量單位:兀描述零件描述/說(shuō)明文本型-倉(cāng)庫(kù)號(hào)倉(cāng)庫(kù)的編勺1字符型】3-已用庫(kù)存?zhèn)}庫(kù)已用存儲(chǔ)容量數(shù)值型6>0:倉(cāng)庫(kù)非空=0:空倉(cāng)庫(kù)<0:不允許庫(kù)存忌量倉(cāng)庫(kù)總存儲(chǔ)容量1數(shù)值型|6>0:物資存量=0:空倉(cāng)庫(kù)<0:不允許負(fù)責(zé)人倉(cāng)庫(kù)負(fù)責(zé)人字符型20-供應(yīng)商編勺供應(yīng)商編P字符型|3-供應(yīng)商I-供應(yīng)商'名稱(chēng)1字符型20-地址供應(yīng)商聯(lián)系地址-部門(mén)號(hào)公司部門(mén)編號(hào)字符型3-部門(mén)名公司部門(mén)名稱(chēng)字符型20-電話(huà)電話(huà)號(hào)碼字符型15-數(shù)據(jù)流條目名稱(chēng)別名簡(jiǎn)述來(lái)源去向入庫(kù)單-入庫(kù)單位在把相應(yīng)的零件送人倉(cāng)庫(kù)時(shí)必須填寫(xiě)的單據(jù)供應(yīng)商庫(kù)仔出庫(kù)單-領(lǐng)料人員從倉(cāng)庫(kù)中領(lǐng)取零件時(shí)必須填寫(xiě)的單據(jù)庫(kù)

19、存公司部門(mén)客戶(hù)還庫(kù)單-零件使用后歸還入庫(kù)必須填寫(xiě)的單據(jù)公司部門(mén)庫(kù)仔需求單-對(duì)新奇件需求所填與的單據(jù)公司部門(mén)庫(kù)仔采購(gòu)單-購(gòu)買(mǎi)新零件所填寫(xiě)的單據(jù)采購(gòu)員供應(yīng)商數(shù)據(jù)存儲(chǔ)條目名稱(chēng)別名簡(jiǎn)述組織方式查詢(xún)要求倉(cāng)庫(kù)庫(kù)存-仔放索引文件,以倉(cāng)庫(kù)編勺為美鍵字要求立即查詢(xún)零件庫(kù)存1-仔放索引文件,以零件編號(hào)為關(guān)鍵字要求立即查詢(xún)加工條目加工名1激發(fā)條件優(yōu)先級(jí)輸入輸出零件入庫(kù)1接收到合格入庫(kù)單時(shí)普通合格入庫(kù)單庫(kù)存滿(mǎn),.零件成功入庫(kù)加工邏輯根據(jù)庫(kù)存記錄。Loop:If(入庫(kù)物資的數(shù)量+物資現(xiàn)有存量)=該物資庫(kù)存量臨界值Then物資存入倉(cāng)庫(kù);物資現(xiàn)有存量=物資現(xiàn)有存量+入庫(kù)物資的數(shù)量;Else物資庫(kù)

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

21、)=該物資庫(kù)存量臨界值;Endif;否:零件不存在,gotoloop;零件入庫(kù);統(tǒng)計(jì)倉(cāng)庫(kù)庫(kù)存已用量;2.3.2數(shù)據(jù)流圖1)本系統(tǒng)的頂層數(shù)據(jù)流圖2)細(xì)化后的數(shù)據(jù)流圖3)貨物入庫(kù)信息管理細(xì)化4)貨物出庫(kù)信息管理細(xì)化2.4安全性和完整性要求2.4.1安全性要求系統(tǒng)安全性要求至少達(dá)到TCSEC(TDI)的C1級(jí)。即只提供了非常初級(jí)的自主安全保護(hù)。能夠?qū)崿F(xiàn)對(duì)用戶(hù)和數(shù)據(jù)的分離,進(jìn)行自主存取控制(DAC),保護(hù)或限制用戶(hù)權(quán)限的傳播。實(shí)行用戶(hù)標(biāo)識(shí)與鑒別,具有數(shù)據(jù)備份和日志審計(jì)功能。2.4.2完整性要求每個(gè)關(guān)系中都至少要有一個(gè)主鍵,并且都有一個(gè)聚集索引(ClusteredIndex)。關(guān)系與關(guān)系之間通過(guò)主外鍵關(guān)

22、聯(lián)。定義屬性上的約束條件,定義觸發(fā)器。三、概念結(jié)構(gòu)設(shè)計(jì)1)庫(kù)存實(shí)體E-R圖:2)入庫(kù)實(shí)體E-R圖:4)部門(mén)需求實(shí)體E-R圖:7)實(shí)體和實(shí)體之間的關(guān)系圖如圖所示8)倉(cāng)庫(kù)管理E-R圖如圖所示四、邏輯結(jié)構(gòu)設(shè)計(jì)4.1關(guān)系模型設(shè)計(jì)1)倉(cāng)庫(kù)表storehouseNO.字段名代碼類(lèi)型約束1倉(cāng)庫(kù)號(hào)stoIDChar(3)主鍵2已用庫(kù)存Used_volumeSmallint非空,默認(rèn)0,unsigned,<=All_volume3庫(kù)存總量All_volumeSmallint非空,默認(rèn)10000,unsigned4負(fù)責(zé)人principalVarchar(20)非空5電話(huà)號(hào)碼stoTELVarchar(15)

23、2)零件表partsNO.字段名代碼類(lèi)型約束1零件號(hào)parIDChar(7)主鍵2壓稱(chēng)partVarchar(20)非空3規(guī)格specChar(10)4單價(jià)priceDecimal(6,2,非空,默認(rèn)0,unsigned5計(jì)量單位mensurationChar(4)|非空,默認(rèn)“元”6描述descriptionText3)供應(yīng)商supplierNO.字段名代碼類(lèi)型約束1編虧supIDChar(3)主鍵2供應(yīng)商supNameVarchar(20)非空3電話(huà)號(hào)碼supTELVarchar(15)非空4地址addressText4)部門(mén)表deptNO.字段名代碼類(lèi)型約束1部門(mén)號(hào)depIDChar(3

24、)主鍵2名稱(chēng)depNameVarchar(20)非空3電話(huà)depTELVarchar(15)5)庫(kù)存表storageNO.字段名代碼類(lèi)型約束1倉(cāng)庫(kù)號(hào)stoIDChar(3)主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新2零件號(hào)parlDChar(7)主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新3現(xiàn)有存量Now_volumeSmallint非空,默認(rèn)0,>=Min_volume,<=Max_volume4最小存量Min_volumeSmallint非空,默認(rèn)0,unsigned5板大存里Max_volumeSmallint非空,默認(rèn)0,unsign

25、ed6)供應(yīng)表supplyNO.字段名代碼類(lèi)型1供應(yīng)商號(hào)supIDChar(3)2零件號(hào)parlDChar(7)3供應(yīng)量supVolumeSmallint4供應(yīng)時(shí)間supDateTimestamp約束主鍵,與supplier表中的supID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新非空,默認(rèn)0,unsigned非空7)部門(mén)需求表demandNO.字段名代碼類(lèi)型約束1零件號(hào)parIDChar(7)主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新2部門(mén)號(hào)depIDChar(3)主鍵,與dept表中的depID外鍵關(guān)聯(lián),級(jí)聯(lián)更新、刪除3需求數(shù)量dem

26、VolumeSmallint非空,默認(rèn)0,unsigned4開(kāi)始時(shí)間startTimeTimestamp非空5結(jié)束時(shí)間endTimeTimestamp非空8)零件歸還表restoreNO.字段名代碼類(lèi)型0編號(hào)resID1倉(cāng)庫(kù)號(hào)stoIDSmallintChar(3)零件號(hào)parIDChar(7)3部門(mén)號(hào)depIDChar(3)約束主鍵,AUTO_INCREMENT主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)更新、刪除主鍵,與dept表中的depID外鍵關(guān)聯(lián),級(jí)聯(lián)更新、刪除4歸還數(shù)量resVolumeSmallint非空,默

27、認(rèn)0,unsigned5經(jīng)手人cmakerVarchar(20)非空6歸還者returnerVarchar(20)非空7歸還時(shí)間resDateTimestamp非空9)零部件采購(gòu)計(jì)劃表stockNO.字段名代碼類(lèi)型約束1零件號(hào)parIDChar(7)主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)更新、刪除2采購(gòu)量stoVolumeSmallint非空,默認(rèn)0,unsigned3供應(yīng)商號(hào)supIDChar(3)與supplier表中的supID外鍵關(guān)聯(lián)4采購(gòu)時(shí)間stoDateTimestamp主鍵5采購(gòu)員buyerVarchar(20)10)入庫(kù)表warehousingNO.字段名代碼類(lèi)型約束

28、0編虧inIDSmallint主鍵,AUTO_INCREMENT1倉(cāng)庫(kù)號(hào)stoIDChar(3)主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新2供應(yīng)商號(hào)supIDChar(3)非空,與supplier表中的supID外鍵關(guān)聯(lián)3零件號(hào)parIDChar(7)主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)更新、刪除4入庫(kù)數(shù)量inVolumeSmallint非空,默認(rèn)0,unsigned5經(jīng)手人1cmakerVarchar(20)“E空6入庫(kù)時(shí)間inDateTimestamp非空,默認(rèn)當(dāng)前時(shí)間11)出庫(kù)表stockoutNO.字段名代碼類(lèi)型約束0outIDsmallint主鍵

29、,AUTO_INCREMENT1倉(cāng)庫(kù)號(hào)stoIDChar(3)主鍵,與storehouse表中的stoID外鍵關(guān)聯(lián),級(jí)聯(lián)刪除、更新2零件號(hào)parIDChar(7)主鍵,與parts表中的parID外鍵關(guān)聯(lián),級(jí)聯(lián)更新、刪除3出庫(kù)數(shù)量outVolumeSmallint非空,默認(rèn)0,unsigned4使用者userVarchar(20)非空5經(jīng)手人cmakerVarchar(20)非空6領(lǐng)取人receiptorVarchar(20)非空7g庫(kù)時(shí)間outDateTimestamp非空,默認(rèn)當(dāng)前時(shí)間4.2用戶(hù)子模式設(shè)計(jì)倉(cāng)庫(kù)信息視圖storehouse_viewNO.字段名代碼1倉(cāng)庫(kù)號(hào)stoID類(lèi)型Cha

30、r(3)備注連storehouse表2已用庫(kù)存Used_volume連storehouse表庫(kù)存總量負(fù)責(zé)人Allvolume連storehouse表電話(huà)號(hào)碼principalVarchar(20)連storehouse表stoTELVarchar(15)連storehouse表零部件庫(kù)存視圖parts_storage_viewNO.字段名代碼類(lèi)型備注1倉(cāng)庫(kù)號(hào)stoIDChar(3)連storage表2零件號(hào)parlD)Char(7)連parts表3邕稱(chēng)partVarchar(20)連parts表4規(guī)格specChar(10)連parts表5m價(jià)priceDecimal(6,2)連parts表6

31、計(jì)量單位mensurationChar(4)連parts表7現(xiàn)有存量Now_volumeSmallint連storage表8最小存量Min_volumeSmallint連storage表9取大存里Max_volumeSmallint連storage表1) 零部件入庫(kù)視圖warehousing_viewNO.字段名代碼類(lèi)型備注0倉(cāng)庫(kù)號(hào)stoIDChar(3)連warehousing表1零件號(hào)parIDChar(7)連parts表,更新warehousing表的parID項(xiàng)2供應(yīng)商號(hào)supIDChar(3)連supplier表3供應(yīng)商supNameVarchar(20)連supplier表4電話(huà)s

32、upTELVarchar(15)連supplier表5零件名partVarchar(20)連parts表NO.字段名代碼類(lèi)型備注6規(guī)格specChar(10)連parts表7單價(jià)priceDecimal(6,2)連parts表8計(jì)量單位mensuratiorChar(4)連parts表9入庫(kù)數(shù)量inVolumeSmallint連warehousing表,更新partsstorageview視圖的Nowvolume項(xiàng)10描述descriptionText連parts表11經(jīng)手人cmakerVarchar(20)連warehousing表12脫庫(kù)時(shí)間inDateTimestamp連warehous

33、ing表4)零部件出庫(kù)視圖stockout_viewNO.字段名代碼類(lèi)型備注倉(cāng)庫(kù)號(hào)stoIDChar(3)連stockout表零件號(hào)parlDChar(7)連parts表,更新stockout表的parlD項(xiàng)出庫(kù)數(shù)量outVolumeSmallint連stockout表,更新storage表的nowvolume使用單位userVarchar(20)連stockout表經(jīng)手人cmakerVarchar(20)連stockout表領(lǐng)取人receiptorVarchar(20)連stockout表出庫(kù)時(shí)間outDateTimestamp連stockout表5)零部件計(jì)劃采購(gòu)視圖stock_viewN

34、O.字段名4可類(lèi)型備注1零件號(hào)parID)Char(7)連stock表2采購(gòu)量stoVolumeSmallint連stock表3供應(yīng)商號(hào)supIE)Char(3)連supplier表,更新stock表的supName4電話(huà)supTELVarchar(15)連supplier表NO.字段名4類(lèi)型備注5價(jià)格priceDecimal(6,2)連parts表6計(jì)量單位mensurationChar(4)連parts表7規(guī)格specChar(10)連parts表8采購(gòu)時(shí)間stoDateTimestamp連stock表9采購(gòu)員buyerVarchar(20)連stock表6)部門(mén)需求視圖demand_vi

35、ewNO.字段名代碼1零件號(hào)parID2部門(mén)號(hào)depID類(lèi)型Char(7)Char(3)備注連demand表連demandJg需求數(shù)量demVolumeSmallint連demand表開(kāi)始時(shí)間startTimeTimestamp連demand表結(jié)束時(shí)間endTimeTimestamp連demand表7)供應(yīng)商零件供應(yīng)視圖supply_viewNO.字段名代碼類(lèi)型備注1供應(yīng)商號(hào)supIDChar(3)連supplier32零件號(hào)parIDChar(7)連supply表3單價(jià)priceDecimal(6,2)連parts表4計(jì)量單位mensurationChar(4)連parts表5規(guī)格specC

36、har(10)連parts表6供應(yīng)量supVolumeSmallint連supply表7供應(yīng)時(shí)間supDateTimestamp連supply表8電話(huà)supTELVarchar(15)連supplier38)零部件歸還入庫(kù)視圖restore_viewNO.字段名代碼類(lèi)型備注0倉(cāng)庫(kù)號(hào)stoIDChar(3)連restore表1零件號(hào)parIDChar(7)連restore表2部門(mén)號(hào)depIDChar(3)連restore表3歸還數(shù)量resVolumeSmallint連restore表4經(jīng)手人cmakerVarchar(20)連restore表5歸還者returnerVarchar(20)連res

37、tore表6歸還時(shí)間resDateTimestamp連restore表4.3系統(tǒng)結(jié)構(gòu)圖4.4安全性和完整性設(shè)計(jì)4.4.1安全性設(shè)計(jì)用戶(hù)類(lèi)別有:信息查詢(xún)員inf,倉(cāng)庫(kù)管理員dba和系統(tǒng)管理員sy&他們的權(quán)限分別為:信息查詢(xún)員inf:只有信息查詢(xún)的權(quán)限。倉(cāng)庫(kù)管理員dba:具有信息查詢(xún),更新,刪除,報(bào)單打印權(quán)限。系統(tǒng)管理員sys:除具有倉(cāng)庫(kù)管理員dba所有權(quán)限外,還具有用戶(hù)管理,數(shù)據(jù)恢復(fù)備份。4.4.2完整性設(shè)計(jì)各表中各個(gè)字段的完整性約束已在“4.1關(guān)系模型設(shè)計(jì)”中各表的“約束”列做了詳細(xì)說(shuō)明。觸發(fā)子設(shè)計(jì):1)零件入庫(kù)觸發(fā)子設(shè)置觸發(fā)子partswarehousingupdate,當(dāng)wareh

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

39、置觸發(fā)子parts_warehousing_delete,當(dāng)stockout表刪除一條(錯(cuò)誤)記錄前,更新storage表的零件存量Now_volume和更新storehouse表的已用存量Used_volume3)零件歸還入庫(kù)觸發(fā)子設(shè)置觸發(fā)子parts_restore_update,當(dāng)restore表插入或更新一條新記錄后,更新storage表的零件存量Now_volume和更新storehouse表的已用存量Used_volume。設(shè)置觸發(fā)子parts_restore_delete,當(dāng)restore表刪除一條(錯(cuò)誤)記錄前,更新storage表的零件存量Now_volume和更新store

40、house表的已用存量Used_volume五、數(shù)據(jù)庫(kù)物理設(shè)計(jì)5.1建立索引各表索引設(shè)計(jì)如下:表名索引字段索引類(lèi)型排列次序唯一值零件零件號(hào)聚集索引升序V零件名非聚集索引升序供應(yīng)商供應(yīng)商號(hào)聚集索引升序V供應(yīng)商'名非聚集索引升序部門(mén)部門(mén)號(hào)聚集索引升序部門(mén)名非聚集索引升序庫(kù)存零件號(hào)非聚集索引升序供應(yīng)供應(yīng)商號(hào)非聚集索引升序零件號(hào)非聚集索引升序供應(yīng)時(shí)間聚集索引降序部門(mén)需求零件號(hào)非聚集索引升序部門(mén)號(hào)非聚集索引升序開(kāi)始時(shí)間非聚集索引降序結(jié)束時(shí)間非聚集索引降序零件歸還歸還時(shí)間聚集索引降序零件號(hào)非聚集索引升序部門(mén)號(hào)非聚集索引升序零件采購(gòu)零件號(hào)非聚集索引升序采購(gòu)時(shí)間聚集索引降序零件入庫(kù)入庫(kù)時(shí)間聚集索引降序

41、零件號(hào)非聚集索引升序零件出庫(kù)出庫(kù)時(shí)間聚集索引降序零件號(hào)非聚集索引升序5.2確定數(shù)據(jù)的存放位置該數(shù)據(jù)庫(kù)的數(shù)據(jù)文件都存放在MySQL勺安裝目錄的/data/warehouse文件夾下.1) 5.3確定系統(tǒng)配置運(yùn)行環(huán)境操作系統(tǒng):Windows2003或WindowsXP,以上數(shù)據(jù)庫(kù)系統(tǒng):5.1.29-rc-community-logMySQLCommunityServer(GPL)開(kāi)發(fā)平臺(tái):C+Builder6.0+MyDAC2forC+Builder6數(shù)據(jù)庫(kù)配置#適合于內(nèi)存256M-512M的用戶(hù)。用于服務(wù)client器搭建port=3306mysqldefault-charact

42、er-set=gbkmysqldport=3306basedir="D:/PC_webserver/mysql/"datadir="D:/PC_webserver/mysql/Data/"default-character-set=gbkdefault-storage-engine=INNODBsql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"max_connections=447query_cache_size=12Mtable_cach

43、e=128tmp_table_size=8Mthread_cache_size=45.4模塊設(shè)計(jì)myisam_max_sort_file_size=100Gmyisam_max_extra_sort_file_size=100Gmyisam_sort_buffer_size=16Mkey_buffer_size=32Mread_buffer_size=64Kread_rnd_buffer_size=256Ksort_buffer_size=2Minnodb_data_home_dir="D:/PC_webserver/mysql/datafiles/"innodb_addi

44、tional_mem_pool_size=2Minnodb_flush_log_at_trx_commit=1innodb_log_buffer_size=1Minnodb_buffer_pool_size=29Minnodb_log_file_size=10Minnodb_thread_concurrency=8log=D:PC_webservermysqllogsql.loglog-output=FILE倉(cāng)庫(kù)管理HIPO圖倉(cāng)庫(kù)管理輸入處理輸出計(jì)劃采購(gòu)單還庫(kù)單入庫(kù)單出庫(kù)單六、數(shù)據(jù)庫(kù)實(shí)施6.1創(chuàng)建數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)對(duì)象SQL腳本/*MySQLDataTransferSourceHost:local

45、hostSourceDatabase:warehouseTargetHost:localhostTargetDatabase:warehouseDate:2009-1-60:01:49*/SETFOREIGN_KEY_CHECKS=0;-TablestructurefordemandCREATETABLE'demand'('parlD'char(7)NOTNULLCOMMENT'零件號(hào)','depID'char(3)NOTNULLCOMMENT'部門(mén)號(hào)','demVolume'smallint(6)

46、unsignedNOTNULLDEFAULT'0'COMMENT'需求數(shù)量','startTime'timestampNOTNULLDEFAULTCURRENT_TIMESTAMPCOMMENT'開(kāi)始時(shí)間','endTime'timestampNOTNULLDEFAULT'0000-00-0000:00:00'COMMENT'結(jié)束時(shí)間',PRIMARYKEY('parID','depID'),KEY'depID'('depID&

47、#39;),KEY'parID'('parID'),KEY'startTime'('startTime'),KEY'endTime'('endTime'),CONSTRAINT'demand_parID'FOREIGNKEY('parID')REFERENCES'parts'('parID')ONDELETENOACTIONONUPDATECASCADE,CONSTRAINT'depID'FOREIGNKEY('

48、depID')REFERENCES'dept'('depID')ONDELETENOACTIONONUPDATECASCADE)ENGINE=InnoDBDEFAULTCHARSET=gbkCOMMENT='需求表'-TablestructurefordeptCREATETABLE'dept'('depID'char(3)NOTNULLCOMMENT'部門(mén)號(hào)','depName'varchar(20)NOTNULLCOMMENT'名稱(chēng)','depTEL

49、'varchar(15)DEFAULTNULLCOMMENT'電話(huà)',PRIMARYKEY('depID'),UNIQUEKEY'depID'('depID'),KEY'depName'('depName')ENGINE=InnoDBDEFAULTCHARSET=gbkCOMMENT='部門(mén)表-TablestructureforpartsCREATETABLE'parts'('parlD'char(7)NOTNULLCOMMENT'零件號(hào)

50、9;,'part'varchar(20)NOTNULLCOMMENT'名稱(chēng)','spec'char(10)DEFAULTNULLCOMMENT'規(guī)格','price'decimal(6,2)unsignedNOTNULLDEFAULT'0.00'COMMENT'單價(jià)','mensuration'char(4)NOTNULLDEFAULT'元'COMMENT'計(jì)量單位','description'textCOMMENT&#

51、39;述描',PRIMARYKEY('parlD'),UNIQUEKEY'parlD'('parlD'),KEY'part'('part')ENGINE=InnoDBDEFAULTCHARSET=gbkCOMMENT='零件表'-TablestructureforprivCREATETABLE'priv'('user'varchar(16)NOTNULL,'type'char(3)NOTNULL,PRIMARYKEY('user'

52、;)ENGINE=InnoDBDEFAULTCHARSET=gbk;-TablestructureforrestoreCREATETABLE'restore'('resID'smallint(6)unsignedNOTNULLAUTO_INCREMENTCOMMENT'編號(hào)','stoID'char(3)NOTNULLCOMMENT'倉(cāng)庫(kù)號(hào)','parID'char(7)NOTNULLCOMMENT'零件號(hào)','depID'char(3)NOTNULLCOMMENT&

53、#39;部門(mén)號(hào)','resVolume'smallint(6)unsignedNOTNULLDEFAULT'0'COMMENT'歸還數(shù)量','cmaker'varchar(20)NOTNULLCOMMENT'經(jīng)手人','returner'varchar(20)NOTNULLCOMMENT'歸還者','resDate'timestampNOTNULLDEFAULTCURRENT_TIMESTAMPCOMMENT'歸還時(shí)間',PRIMARYKEY('resID','parID','depID'),KEY'stoID'('st

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論