倉(cāng)庫(kù)管理系統(tǒng)典型數(shù)據(jù)庫(kù)_第1頁(yè)
倉(cāng)庫(kù)管理系統(tǒng)典型數(shù)據(jù)庫(kù)_第2頁(yè)
倉(cāng)庫(kù)管理系統(tǒng)典型數(shù)據(jù)庫(kù)_第3頁(yè)
倉(cāng)庫(kù)管理系統(tǒng)典型數(shù)據(jù)庫(kù)_第4頁(yè)
倉(cāng)庫(kù)管理系統(tǒng)典型數(shù)據(jù)庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩17頁(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、河南城建學(xué)院典型數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告課程名稱(chēng):典型數(shù)據(jù)庫(kù)課程設(shè)計(jì)倉(cāng)庫(kù)管理系統(tǒng)指導(dǎo)教師: 班 級(jí): 學(xué) 號(hào): 學(xué)生姓名: 同組人員:;成 績(jī):I評(píng)計(jì)算機(jī)科學(xué)與工程學(xué)院口 -2016年1月10日第1章概述1.1選題的背景與意義1.2相關(guān)技術(shù)分析.第2章系統(tǒng)功能設(shè)計(jì)2.1系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)圖 2.2系統(tǒng)功能模塊.1.2.1登錄模塊1.2.2基本信息管理模塊1.2.3貨物信息管理模塊1.2.4倉(cāng)庫(kù)貨物管理模塊1.2.5查詢(xún)信息信息模塊 1.2.6倉(cāng)庫(kù)警報(bào)功能模塊1.2.7信息導(dǎo)岀功能模塊 第3章數(shù)據(jù)庫(kù)設(shè)計(jì).3.1需求分析.3.1.1數(shù)據(jù)流程圖3.1.2數(shù)據(jù)字典.3.2數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì) 321 E-R圖設(shè)

2、計(jì)方法 3.2.2全局E-R圖 3.2.3局部E-R圖 3.3數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)3.4安全性和完整性設(shè)計(jì) 第4章數(shù)據(jù)庫(kù)維護(hù)與查詢(xún)4.1序列4.2觸發(fā)器第5章UI設(shè)計(jì)與代碼實(shí)現(xiàn)5.1 UI設(shè)計(jì) 5.1.1倉(cāng)庫(kù)管理員 5.1.2系統(tǒng)管理員 5.2代碼實(shí)現(xiàn) 5.2.1倉(cāng)庫(kù)管理員 5.3.2系統(tǒng)管理員第6章結(jié)束語(yǔ).參考文獻(xiàn) 第1章概述1.1選題的背景與意義1、背景:隨著信息技術(shù)的發(fā)展和國(guó)內(nèi)外互聯(lián)網(wǎng)技術(shù)應(yīng)用水平的逐步提高,在企業(yè)管理過(guò)程中,傳統(tǒng)的工作方式和管理模式已經(jīng)難以滿足現(xiàn)代社會(huì)的必然需求,實(shí)現(xiàn)企業(yè)現(xiàn)代化綜合管理已經(jīng)是提高國(guó)家政府機(jī)關(guān)和企事業(yè)單位各部門(mén)工作效率、規(guī)范化管理的必然 發(fā)展趨勢(shì)。隨著經(jīng)濟(jì)全

3、球化、信息網(wǎng)絡(luò)化和物流現(xiàn)代化進(jìn)程的全面推進(jìn),倉(cāng)儲(chǔ)供需量呈現(xiàn)爆炸式的增長(zhǎng),傳統(tǒng)的倉(cāng)庫(kù)管理模式和管理系統(tǒng),已根本滿足不了現(xiàn)代社會(huì)全面 信息化的嚴(yán)峻挑戰(zhàn),如何加強(qiáng)以信息化為指導(dǎo)的現(xiàn)代倉(cāng)庫(kù)管理技術(shù)已成為物流現(xiàn)代化 走向成功的有效途徑,如何將互聯(lián)網(wǎng)技術(shù)和倉(cāng)儲(chǔ)物流的信息化技術(shù)緊密結(jié)合起來(lái),開(kāi)發(fā)出適應(yīng)當(dāng)前社會(huì)發(fā)展需要的、先進(jìn)的現(xiàn)代化物流倉(cāng)儲(chǔ)管理技術(shù)平臺(tái),是現(xiàn)代化物流發(fā)展技術(shù)中一項(xiàng)基礎(chǔ)的、又是很關(guān)鍵的、特別值得研究的子課題。ASP技術(shù)是面向?qū)?象編程的技術(shù),可實(shí)現(xiàn)復(fù)雜數(shù)據(jù)庫(kù)的操作;用 ASP開(kāi)發(fā)的Web應(yīng)用程序安裝在網(wǎng)絡(luò)服務(wù) 器上,運(yùn)行在網(wǎng)絡(luò)服務(wù)器上,因而 ASP源程序的隱密安全系數(shù)性高;而 ASP又是基于B

4、/S模型架構(gòu)的、開(kāi)放式的 Web!務(wù)器的應(yīng)用程序開(kāi)發(fā)技術(shù),因此,采用 ASP技術(shù)開(kāi)發(fā) 運(yùn)行在服務(wù)器端的倉(cāng)庫(kù)管理信息系統(tǒng)平臺(tái)是眾多軟件設(shè)計(jì)與開(kāi)發(fā)人士的首要選擇。本 文比較全面地闡述了與ASP ADO B/S模式有關(guān)的理論技術(shù),為構(gòu)建Web倉(cāng)庫(kù)管理信息 系統(tǒng)提供了必要的理論支持。首先分析了 ASP技術(shù)的優(yōu)勢(shì)、特點(diǎn)及其工作原理,剖析 了 ASP工作的核心內(nèi)涵,搭建了 ASP技術(shù)的工作環(huán)境,為開(kāi)發(fā)系統(tǒng)功能提供的必需的技 術(shù)運(yùn)行環(huán)境;分析了目前Web數(shù)據(jù)庫(kù)最佳訪問(wèn)組件ADC技術(shù)的對(duì)象與數(shù)據(jù)集之間的關(guān) 系,直接搭建了 Web應(yīng)用程序與數(shù)據(jù)庫(kù)訪問(wèn)的聯(lián)系梁;根據(jù)現(xiàn)代倉(cāng)儲(chǔ)市場(chǎng)的需求特點(diǎn),對(duì)擬開(kāi)發(fā)系統(tǒng)的功能進(jìn)行了

5、細(xì)致地分析與設(shè)計(jì),建立了倉(cāng)儲(chǔ)數(shù)據(jù)管理的E-R模型圖、數(shù)據(jù)庫(kù)結(jié)構(gòu),分析了 B/S架構(gòu)模式的三層框架,構(gòu)建了以該框架為模型的倉(cāng)庫(kù)管 理信息系統(tǒng),重點(diǎn)分析介紹了有關(guān)功能模塊的ASP實(shí)現(xiàn)過(guò)程,成功地實(shí)現(xiàn)了基于 ASP 運(yùn)行環(huán)境的倉(cāng)庫(kù)管理信息系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì);并對(duì)本系統(tǒng)的各項(xiàng)功能進(jìn)行了測(cè)試與分析,發(fā)現(xiàn)系統(tǒng)運(yùn)行狀態(tài)良好,人機(jī)交互友好,程序設(shè)計(jì)實(shí)現(xiàn)合理,達(dá)到了項(xiàng)目設(shè)計(jì)的 目的和要求。最后,對(duì)本次的項(xiàng)目設(shè)計(jì)進(jìn)行了總結(jié)與展望,發(fā)現(xiàn)了系統(tǒng)的構(gòu)架模式關(guān) 系著程序開(kāi)發(fā)效率,對(duì)開(kāi)發(fā)系統(tǒng)有著重要的影響意義,好馬配好鞍,優(yōu)秀的軟件必然 有優(yōu)秀的構(gòu)架。作為軟件開(kāi)發(fā)設(shè)計(jì)人員既要努力學(xué)好軟件技術(shù)又要重視相關(guān)模式的學(xué) 習(xí),這樣,就

6、能達(dá)到事半功倍的效果,設(shè)計(jì)開(kāi)發(fā)出更加優(yōu)秀的應(yīng)用系統(tǒng)來(lái)。2 、意義倉(cāng)庫(kù)管理系統(tǒng)是典型的信息管理系統(tǒng) (MIS), 其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù), 以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性 強(qiáng)、數(shù)據(jù)安全性好的庫(kù) ,而對(duì)于后者則要求應(yīng)用程序功能完備、易使用等特點(diǎn)。經(jīng)過(guò)分 析,我們使用Microsoft公司的數(shù)據(jù)庫(kù)開(kāi)發(fā)工具 SQL Server2008和Microsoft VisualStudio 2010, 利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具和數(shù)據(jù)庫(kù)的結(jié)合比較方便 , 我們開(kāi) 發(fā)了這套庫(kù)存管理系統(tǒng) , 包括倉(cāng)庫(kù)管理、入庫(kù)管理、出庫(kù)管理、庫(kù)存管理以及查詢(xún)等模 塊。倉(cāng)

7、庫(kù)管理可用于配置企業(yè)的倉(cāng)庫(kù)信息 ; 出庫(kù)、入庫(kù)管理可以使管理人員管理各種類(lèi) 型的貨物進(jìn)出 ; 庫(kù)存管理可提供便捷的庫(kù)存查詢(xún)管理。倉(cāng)庫(kù)管理系統(tǒng)實(shí)現(xiàn)了企業(yè)對(duì)貨物 的管理,用來(lái)控制存儲(chǔ)貨物的數(shù)量 ,以保證穩(wěn)定的貨物支持正常的運(yùn)轉(zhuǎn) , 但又最小限度地 占用資本。它是一種相關(guān)的、動(dòng)態(tài)的及真實(shí)的庫(kù)存控制系統(tǒng)。它能夠結(jié)合、滿足相關(guān) 部門(mén)的需求 ,隨時(shí)間變化動(dòng)態(tài)地調(diào)整庫(kù)存 ,精確地反映庫(kù)存現(xiàn)狀 , 加強(qiáng)庫(kù)存環(huán)節(jié)管理 , 有 效地控制貨物收發(fā) ,降低了庫(kù)存,優(yōu)化了庫(kù)存結(jié)構(gòu) ;能夠及時(shí)了解貨物狀態(tài) ,全方位的倉(cāng) 庫(kù)管理可以及時(shí)了解貨物分布 ,避免了貨物短缺、積壓、過(guò)期變質(zhì) , 及時(shí)了解貨物的收 發(fā)成本, 貨物數(shù)據(jù)

8、共享。1.2 相關(guān)技術(shù)分析 此系統(tǒng)采用了成熟且完善的 oracle 11g 及 Microsoft Visual Studio 2010 軟件 開(kāi)發(fā)工具來(lái)進(jìn)行后臺(tái)數(shù)據(jù)庫(kù)的管理、操作和維護(hù)。該軟件功能強(qiáng)大,可用性強(qiáng),完全 可以滿足我們開(kāi)發(fā)項(xiàng)目的要求。第 2 章 系統(tǒng)功能設(shè)計(jì)2.1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)圖系統(tǒng)要具備如下功能:登錄界面統(tǒng)一,用戶(hù)登錄系統(tǒng)時(shí)進(jìn)行身份驗(yàn)證,如不是系 統(tǒng)用戶(hù)則禁止登錄; 添加新員工時(shí),通過(guò)系統(tǒng)管理員進(jìn)行添加,并能采集員工的基本 信息;倉(cāng)庫(kù)貨品信息的管理,系統(tǒng)包括倉(cāng)庫(kù)管理、入庫(kù)、出庫(kù)和一些統(tǒng)計(jì)查詢(xún)等幾部 分組成。倉(cāng)庫(kù)管理系統(tǒng)實(shí)現(xiàn)對(duì)貨品信息的管理和總體的統(tǒng)計(jì)等,倉(cāng)庫(kù)信息,供貨單位

9、和操作員信息的查看及維護(hù)。倉(cāng)庫(kù)管理人員可以瀏覽、查詢(xún)、添加、刪除等產(chǎn)品的基 本信息。圖 2.1 系統(tǒng)功能圖2.2 系統(tǒng)功能模塊1.2.1 登錄模塊登錄模塊可以分為系統(tǒng)管理員登錄和管理員登錄。如果用戶(hù)要進(jìn)行登陸時(shí),系統(tǒng) 會(huì)進(jìn)去數(shù)據(jù)庫(kù)進(jìn)行帳號(hào)密碼匹配,同時(shí)也要進(jìn)行權(quán)限匹配,如果匹配成功才可以登 錄。根據(jù)其選擇的用戶(hù)不同,輸入不同的用戶(hù)與密碼,接入不同的用戶(hù)界面,管理不 同的界面。1.2.2 基本信息管理模塊基本信息模塊分為倉(cāng)庫(kù)基本信息,操作員基本信息,客戶(hù)基本信息,倉(cāng)庫(kù)基本信 息又分為管理員管理,提貨員管理,采購(gòu)員管理。1.2.3 貨物信息管理模塊貨物信息管理模塊分為添加貨物信息,修改貨物信息,刪

10、除貨物信息。124倉(cāng)庫(kù)貨物管理模塊倉(cāng)庫(kù)貨物管理模塊分為入庫(kù)操作和出庫(kù)操作。125查詢(xún)信息信息模塊查詢(xún)信息管理模塊分為查詢(xún)貨物信息,查詢(xún)倉(cāng)庫(kù)信息,查詢(xún)客戶(hù)信息。126倉(cāng)庫(kù)警報(bào)功能模塊倉(cāng)庫(kù)警報(bào)功能模塊在貨物不足時(shí)提示。127信息導(dǎo)岀功能模塊信息導(dǎo)出功能模塊分為導(dǎo)出貨物信息,導(dǎo)出入庫(kù)信息,導(dǎo)出出庫(kù)信息。第3章數(shù)據(jù)庫(kù)設(shè)計(jì)3.1需求分析3.1.1數(shù)據(jù)流程圖3.1.2數(shù)據(jù)字典(1)倉(cāng)庫(kù)表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述Snoint倉(cāng)庫(kù)編號(hào),主鍵Sn amevarchar2(10)倉(cāng)庫(kù)名稱(chēng)Sadressvarchar2(50)倉(cāng)庫(kù)地址Sbign umber倉(cāng)庫(kù)大小Anovarchar2(10)管理員編號(hào)外鍵(2)入庫(kù)表

11、字段名稱(chēng)數(shù)據(jù)類(lèi)型描述GnoInt貨物編號(hào)外鍵Bnoint采購(gòu)員編號(hào)外鍵SnoInt倉(cāng)庫(kù)編號(hào)外鍵IdateDate采購(gòu)日期InumInt采購(gòu)數(shù)量Anovarchar2(10)管理員編號(hào)外鍵(3)岀庫(kù)表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述GnoInt貨物編號(hào)外鍵Pnoint提貨員編號(hào)外鍵Snoint倉(cāng)庫(kù)編號(hào)外鍵Anovarchar2(10)管理員編號(hào)外鍵Odatedate采購(gòu)日期On umInt米購(gòu)數(shù)量(4)客戶(hù)表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述CnoInt客戶(hù)號(hào),主鍵Cn ameVarchar2(10)客戶(hù)名CtypeVarchar2(10)客戶(hù)類(lèi)型CmethodVarchar2(11)聯(lián)系地址CcodeVarchar2(

12、7)郵政編號(hào)CbzVarchar2(50)備注Pnoint提貨員編號(hào)外鍵(5)庫(kù)存表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述GnoInt貨物編號(hào)外鍵Snoint倉(cāng)庫(kù)編號(hào)外鍵KnumInt貨物數(shù)量Kdatedate清點(diǎn)時(shí)間(6)提貨員表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述PnoInt提貨員編號(hào),主鍵Pn ameVarchar2(11)提貨員姓名P sexvarchar2(3)提貨員性別Pm ethodvarchar2(11)提貨員聯(lián)系方式P addressvarchar2(50)提貨員聯(lián)系地址(7)用戶(hù)表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述Un ameVarchar2(10)用戶(hù)名Up assVarchar2(10)密碼UgradeInt權(quán)限(8

13、)管理員表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述AnoVarchar2(10)管理員編號(hào),主鍵An ameVarchar2(10)管理員姓名AsexVarchar2(3)管理員性別Amethodvarchar2(11)管理員聯(lián)系方式Aaddressvarchar2(50)管理員地址(9)貨物表字段名稱(chēng)數(shù)據(jù)類(lèi)型描述Gnoint貨物編號(hào)主鍵Gn amevarchar2(10)貨物名稱(chēng)Snonchar(10)倉(cāng)庫(kù)編號(hào)Gdatedate生產(chǎn)日期Gfactoryvarchar2(10)生產(chǎn)廠家Pnonchar(10)采購(gòu)員編號(hào)Gp ricen umber(7,2)貨物單價(jià)Idatedate入庫(kù)時(shí)間(10)米購(gòu)員表字段名稱(chēng)

14、數(shù)據(jù)類(lèi)型描述BnoInt提貨員編號(hào),主鍵Bn amevarchar2(10)提貨員姓名Bsexvarchar2(3)提貨員性別Bmethodvarchar2(11)提貨員聯(lián)系方式Baddressvarchar2(50)提貨員聯(lián)系地址3.2數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)3.2.1 E-R圖設(shè)計(jì)方法1).屬性必須是不可分的數(shù)據(jù)項(xiàng)。2).屬性不能與其他實(shí)體具有聯(lián)系,聯(lián)系只能發(fā)生在實(shí)體之間。3.2.2全局E-R圖3.2.3局部E-R圖倉(cāng)庫(kù)-貨物-采購(gòu)員3.1、圖3.1倉(cāng)庫(kù)-貨物-采購(gòu)員3.2、倉(cāng)庫(kù)-貨物-提貨員圖3.2倉(cāng)庫(kù)-貨物-提貨員3.3、倉(cāng)庫(kù)-貨物(存儲(chǔ)情況)圖3.3倉(cāng)庫(kù)-貨物(存儲(chǔ)情況)3.4、客戶(hù)-提貨

15、員圖3.4客戶(hù)-提貨員3.5、系統(tǒng)管理員-采購(gòu)員圖3.5管理員-采購(gòu)員3.6、管理員-倉(cāng)庫(kù)圖3.6管理員-倉(cāng)庫(kù)3.7、系統(tǒng)管理員-提貨員圖3.7系統(tǒng)管理員-提貨員3.3數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)1、倉(cāng)庫(kù)-貨物-采購(gòu)員(入庫(kù))(M-N)Tb_Storage(Sno,S name,Sadress,Sbig,A no);Tb Good(Gno,Gname,Gdate,Gfactory,Gpricejdate)Tb_ln Storage(Gno, Sno ,ldate,l nu m,B no);2、倉(cāng)庫(kù)-貨物-提貨員(出庫(kù))(M-N)Tb_Storage(Sno,S name,Sadress,Sbig,A n

16、o);Tb_Good(Gno,G name,Gdate,Gfactory,G pricejdate)Tb_OutStorage(Gno, Snq Odate, On um, Pno);3、倉(cāng)庫(kù)-貨物(存儲(chǔ)情況)(M-N)Tb_Storage(Sno,S name,Sadress,Sbig,A no);Tb_Good(Gno,G name,Gdate,Gfactory,G pricejdate)Tb_Kc(Gno, Sno ,Knu m,Kdate);4、客戶(hù)-提貨員(N-M)Tb_Clie nt(Cn o,C name,Ct yp e,Cmethod,Ccode,C pho ne,Cbz, P

17、no);Tb_P icker(Pno, Pn ame ,P sex, Pm ethod, Paddress);5、管理員-倉(cāng)庫(kù)(1-N)Tb_Admi n(Ano,A name,Asex,Amethod,Aaddress);Tb Storage(Sno,Sname,Sadress,Sbig,Ano);倉(cāng)庫(kù) /Tb Storage(Sno,Sname,Sadress,Sbig,Ano);入庫(kù)Tb_ln Storage(Gno, Sno ,ldate,l nu m,B no);出庫(kù)Tb OutStorage(Gno, SnqOdate,Onum,Pno);客戶(hù)/Tb_Clie nt(Cno,C n

18、ame,Cty pe,Cmethod,Ccode,C pho ne,Cbz, Pno); 庫(kù)存Tb_Kc(Gno, Sno ,Knu m,Kdate);提貨員 /Tb_P icker(Pno, Pn ame ,P sex, Pm ethod ,P address);用戶(hù) /Tb_User(U name,U pass,Ugrade);管理員 /Tb_Admi n( Ano,A name,Asex,Amethod,Aaddress);貨物 /Tb_Good(Gno,G name,Gdate,Gfactory,G pricejdate)采購(gòu)員 /Tb_Buyer(Bno,B name,Bsex,Bm

19、ethod,Badress);3.4安全性和完整性設(shè)計(jì)1. 外鍵約束:管理員表中作為主鍵的管理員編號(hào)在倉(cāng)庫(kù)表中作為外鍵使用: con stra int gly_key foreig n key(A no) refere nces Tb_Admi n(Ano)提貨員表中作為主鍵的提貨員編號(hào)在客戶(hù)表中作為外鍵使用: con stra int thy_key foreig n key (Pno) refere nces Tb_P icker( Pno)貨物表中作為主鍵的貨物編號(hào)在庫(kù)存表中作為外鍵使用: con stra int hw_key foreig n key(G no) refere nce

20、s Tb_Good(G no) 倉(cāng)庫(kù)表中作為主鍵的的倉(cāng)庫(kù)編號(hào)在庫(kù)存表中作為外鍵使用: con stra int ck_key foreig n key(S no) refere nces Tb_Storage(S no) 貨物編號(hào),倉(cāng)庫(kù)編號(hào),提貨員編號(hào),管理員編號(hào)在出庫(kù)表中作為外鍵使用: constraint hw1_key foreign key(Gno) references Tb_Good(Gno) constraint ck1_key foreign key(Sno) references Tb_Storage(Sno) constraint thy1_key foreign key(

21、Pno) references Tb_Picker(Pno) constraint gly1_key foreign key(Ano) references Tb_Admin(Ano)貨物編號(hào),倉(cāng)庫(kù)編號(hào),采貨員編號(hào),管理員編號(hào)在出庫(kù)表中作為外鍵使用:constraint hw1_key foreign key(Gno) references Tb_Good(Gno) constraint ck1_key foreign key(Sno) references Tb_Storage(Sno) constraint cgy2_key foreign key(Bno) references Tb_B

22、uyer(Bno) constraint gly1_key foreign key(Ano) references Tb_Admin(Ano)2. check 約束check約束:Bsex varchar2(3) check (Bsex in(男','女'),Psex varchar2(3) check (Psex in 男','女'),3. primary key 約束管理員表: Ano varchar2(10) primary key, 倉(cāng)庫(kù)表 : Sno int primary key,采購(gòu)員表:Bno intprimary key,提貨員

23、表:Pno intprimary key,貨物表 :Gno intprimary key,客戶(hù)表 :Cno int primary key,第 4 章 數(shù)據(jù)庫(kù)維護(hù)與查詢(xún)4.1 序列1. 提貨員序列 create sequence Picker_seq start with 1001 increment by 12. 采購(gòu)員序列 create sequence Buyer_seq start with 2001 increment by 1;3. 貨物序列create sequence Good_seq start with 3001 increment by 1;4. 倉(cāng)庫(kù)序列create s

24、equence Storage_seqstart with 4001increment by 15. 客戶(hù)序列 create sequence Client_seq start with 5001increment by 1;4.2 觸發(fā)器1. 提貨員觸發(fā)器create or replace trigger add_Picker_trigger before inserton TB_Pickerfor each rowbeginif :new.Pno is null thenselect Picker_seq.nextval into :new.Pno from dual; end if;en

25、d add_Picker_trigger;2. 采購(gòu)員觸發(fā)器create or replace trigger add_Buyer_trigger before insert on TB_Buyer for each rowbeginif :new.Bno is null thenselect Buyer_seq.nextval into :new.Bno from dual; end if;end add_Buyer_trigger;3. 貨物觸發(fā)器create or replace trigger add_Good_triggerbefore inserton TB_Goodfor eac

26、h rowbeginif :new.Gno is null thenselect Good_seq.nextval into :new.Gno from dual; end if;end add_Good_trigger;4. 倉(cāng)庫(kù)觸發(fā)器create or replace trigger add_Storage_trigger before insert on TB_Storage for each rowbeginif :new.Sno is null then select Storage_seq .n extval into :n ew.S no from dual; end if;en

27、d add_Storage_trigger;5. 客戶(hù)觸發(fā)器create or repl ace trigger add_Clie nt_tnggerbefore inserton TB_Clie ntfor each rowbeginif :n ew.C no is n ull the nselect Clie nt_seq. nextval into :n ew.C no from dual;end if;end add_Clie nt_trigger;第5章UI設(shè)計(jì)與代碼實(shí)現(xiàn)5.1 UI設(shè)計(jì)5.1.1倉(cāng)庫(kù)管理員1.登錄界面設(shè)計(jì)登錄模塊可以分為系統(tǒng)管理員登錄和管理員登錄。如果用戶(hù)要進(jìn)行登陸

28、時(shí),系統(tǒng)會(huì)進(jìn)去數(shù)據(jù)庫(kù)進(jìn)行帳號(hào)密碼匹配,同時(shí)也要進(jìn)行權(quán)限匹配,如果匹配成功才可以登 錄。根據(jù)其選擇的用戶(hù)不同,輸入不同的用戶(hù)與密碼,接入不同的用戶(hù)界面,管理不 同的界面。2. 基本信息模塊設(shè)計(jì)基本信息模塊包含倉(cāng)庫(kù)基本信息,客戶(hù)基本信息,操作員基本信息。倉(cāng)庫(kù)基本信息設(shè)置有修改和刪除的功能??蛻?hù)基本信息設(shè)置了添加,刪除和修改的功能。操作員 基本信息設(shè)置了修改功能。因?yàn)榭蛻?hù)信息為常變實(shí)體屬性,因此設(shè)置了添加,修改和 刪除的功能。倉(cāng)庫(kù)信息為不常變實(shí)體屬性,因此設(shè)置了修改和刪除屬性。操作員因?yàn)?是管理員,不能修改同一等級(jí)權(quán)限的信息,因此只給添加了修改基本信息的功能。3. 貨物信息模塊設(shè)計(jì)貨物信息模塊包含對(duì)

29、貨物信息的添加,貨物信息的刪除,貨物信息的修改對(duì)應(yīng)現(xiàn) 實(shí)世界的引進(jìn)新貨物,貨物信息的更新和清倉(cāng)處理。4. 出庫(kù)入庫(kù)模塊設(shè)計(jì)出庫(kù)入庫(kù)模塊包含了貨物出庫(kù)和入庫(kù)模塊。對(duì)于入庫(kù)信息來(lái)說(shuō),當(dāng)系統(tǒng)開(kāi)始入庫(kù)時(shí),先判斷貨物是否存在,如果不存在的話這直接將貨物信息插入庫(kù)存表,然后在入 庫(kù)表中插入記錄,提示入庫(kù)成功。如果貨物存在的話則看對(duì)應(yīng)的倉(cāng)庫(kù)是否存在如果存 在的話則在原來(lái)的貨物基礎(chǔ)上只更新貨物數(shù)量提示入庫(kù)成功,如果倉(cāng)庫(kù)不匹配的話則 插入該貨物信息,然后在入庫(kù)表中插入記錄,提示入庫(kù)成功。出庫(kù)信息,當(dāng)系統(tǒng)開(kāi)始出庫(kù)時(shí),先判斷貨物是否存在如果存在的話則看需要出貨 的倉(cāng)庫(kù)是否存在,如果存在的話再看貨物數(shù)量是否滿足出貨數(shù)

30、,如果滿足則出庫(kù)成功 同時(shí)對(duì)庫(kù)存表和出庫(kù)表進(jìn)行更新,提示出庫(kù)成功,否則則出庫(kù)失敗。5. 信息查詢(xún)模塊設(shè)計(jì)信息查詢(xún)模塊包含貨物信息查詢(xún),倉(cāng)庫(kù)信息查詢(xún),客戶(hù)信息查詢(xún)。通過(guò)對(duì)客戶(hù) 表,倉(cāng)庫(kù)表和貨物表的主鍵進(jìn)行匹配唯一的確定一行數(shù)據(jù)返回 GridView 進(jìn)行顯示。6. 警報(bào)信息模塊設(shè)計(jì)警報(bào)信息功能,是當(dāng)庫(kù)存中貨物數(shù)量少于 10 的時(shí)候自動(dòng)提醒管理員要進(jìn)行及時(shí)的 補(bǔ)貨,以免貨物短缺,造成損失。7. 信息導(dǎo)出模塊設(shè)計(jì)信息導(dǎo)出模塊包含了導(dǎo)出貨物信息,導(dǎo)出出庫(kù)信息,導(dǎo)出入庫(kù)信息功能,方便倉(cāng) 庫(kù)人員進(jìn)行報(bào)表打印和倉(cāng)庫(kù)流水信息。5.1.2 系統(tǒng)管理員1. 管理員信息模塊設(shè)計(jì)管理員信息模塊包含對(duì)管理員的添加修改和

31、刪除的功能,因?yàn)閭}(cāng)庫(kù)管理系統(tǒng)由管 理員進(jìn)行管理,因此當(dāng)添加管理員信息時(shí),在給管理員表添加基本信息的同時(shí)也給用戶(hù)表中添加了信息,帳號(hào)為管理員編號(hào),密碼默認(rèn)為 123.2.采購(gòu)員信息模塊設(shè)計(jì)采購(gòu)員信息管理(對(duì)采購(gòu)員信息的添加,修改,刪除)3.提貨員信息模塊設(shè)計(jì)5.2提貨員信息管理(對(duì)提貨員信息的添加,修改,刪除) 代碼實(shí)現(xiàn)5.2.1 倉(cāng)庫(kù)管理員1. 登錄界面登錄匹配關(guān)鍵代碼protected void Button1_Click( object sender, EventArgs e)var qx = -1 ; if " 倉(cāng)庫(kù)管理員 ")qx = 1;elseqx = 0;Or

32、acleCommandmycommand = new OracleCommand( "select * from Tb_User where Uname='"+this "'and Upass='" + this "' and Ugrade=" + qx, conn);conn.Open();OracleDataReader recu = mycommand.ExecuteReader();if (recu.Read()if (qx=1)SessionResponse.Redirect("An

33、ame" = TextBox1.Text;);else if (qx = 0)Response.Redirect(elseResponse.Write(TextBox2.Text ="jbxx.aspx""gly.aspx""<script>alert("HH .2. 基本信息添加客戶(hù)信息關(guān)鍵代碼protected void Button1_Click( object sender, );后勤處用戶(hù)名或密碼錯(cuò)誤!EventArgs e)");</script>" );OracleC

34、ommandmycomm = new OracleCommand( "insert intoTb_Client(Cname,Ctype,Cmethod,Ccode,Caddress,Cbz,Pno) values('""','" + this "','" + this "','" + this "','" + thisconn.Open();mycomm.ExecuteNonQuery();conn.Close();Orac

35、leCommandmy = new OracleCommand( "select * from Tb_Client where Cname='" conn);conn.Open();OracleDataReader recu = my.ExecuteReader();if (recu.Read()+"','" +this "','" + this this "')" , conn);+ this "'"Response.Write( thi

36、s this this this this this this"<script>alert(".TextBox2.Text =.TextBox3.Text =.TextBox4.Text =.TextBox5.Text =.TextBox6.Text =.TextBox7.Text =.TextBox8.Text =添加成功!");</script>");HHHHHHHHHHHHHHelseResponse.Write( conn.Close();"<script>alert("添加失?。?quot

37、;);</script>");protected void Button2_Click( object sender, EventArgse)this this this this this this this.TextBox2.Text =.TextBox3.Text =.TextBox4.Text =.TextBox5.Text =.TextBox6.Text =.TextBox7.Text =.TextBox8.Text =HHHHHHHHHHHHHH3. 貨物信息添加貨物信息關(guān)鍵代碼protected void Button1_Click(object sende

38、r, EventArgs e) "',"+TextBox5.Text+ conn.Open(); mycomm.ExecuteNonQuery(); conn.Close(); conn.Open();OracleDataReader recu = my.ExecuteReader();if (recu.Read()添加成功! ");</script>");Response.Write("<script>alert(" else 添加失?。?");</script>");

39、Response.Write("<script>alert(" conn.Close();protected void Button2_Click(object sender, EventArgs e) 4. 出庫(kù)入庫(kù)信息出庫(kù)入庫(kù)關(guān)鍵代碼protected void Button1_Click(object sender, EventArgs e) conn.Open();OracleDataReader recu = my.ExecuteReader();if (recu.Read() conn.Close(); conn.Open();mycomm.Exec

40、uteNonQuery(); conn.Close(); conn.Open();my1.ExecuteNonQuery(); conn.Close();出庫(kù)成功! ");</script>");Response.Write("<script>alert(" else貨物不存在或者貨物不足出庫(kù)失?。?conn.Close(); Response.Write("<script>alert("");</script>");protected void Button2_Cl

41、ick(object sender, EventArgs e) protected void Button1_Click(object sender, EventArgs e) conn.Open();OracleDataReader recu = my.ExecuteReader();if (recu.Read() conn.Close(); conn.Open();my1.ExecuteNonQuery(); conn.Close(); else conn.Close(); conn.Open(); my2.ExecuteNonQuery(); conn.Close(); conn.Ope

42、n(); OracleDataReader recu1 = my.ExecuteReader(); if (recu1.Read()入庫(kù)成功! ");</script>"); conn.Close(); conn.Open(); mycomm.ExecuteNonQuery(); conn.Close(); Response.Write("<script>alert("入庫(kù)失??! ");</script>"); else conn.Close(); Response.Write("<

43、script>alert("protected void Button2_Click(object sender, EventArgs e) 5. 信息查詢(xún)查詢(xún)倉(cāng)庫(kù)信息關(guān)鍵代碼protected void Button1_Click(object sender, EventArgs e) Label2.Text = TextBox1.Text; GridView1.Visible = true;倉(cāng)庫(kù)信息不存在! "Label3.Text = " else GridView1.Visible = true; 6. 警報(bào)功能顯示警報(bào)信息關(guān)鍵代碼protected

44、 void Button1_Click(object sender, EventArgs e)Label1.Text = "以下貨物庫(kù)存不足,請(qǐng)及時(shí)補(bǔ)充 "OracleDataAdapter dataAdapter2 = newOracleDataAdapter("select * from tb_kc where Knum<=10", conn);DataSet setS = new DataSet();dataAdapter2.Fill(setS, "AAA");7. 信息導(dǎo)出導(dǎo)出入庫(kù)信息關(guān)鍵代碼protected void

45、 Button1_Click(object sender, EventArgs e)Response.Clear();Response.BufferOutput = true;/ 設(shè)定輸出的字符集Response.Charset = "GB2312"/ 假定導(dǎo)出的文件名為 aFileName.docResponse.AppendHeader("Content-Disposition", "attachment;filename=Statement.doc"); / 設(shè)置導(dǎo)出文件的格式Response.ContentType = &qu

46、ot;application/ms-word" / 關(guān)?閉?ViewStateGridView1.EnableViewState = false;GridView1.RenderControl(textWriter);/ 把HTML寫(xiě)回瀏覽器Response.Write(stringWriter.ToString();Response.End();5.3.2 系統(tǒng)管理員1. 添加管理員信息關(guān)鍵代碼protected void Button1_Click( object sender, EventArgs e) thisthisOracleCommandmycomm = new Ora

47、cleCommand( "insert into Tb_Admin values('" "','""','"+ this "','"+ this "')" , conn);OracleCommandmycomm1 = new OracleCommand( "insert into Tb_User values('" "','123','1')"

48、, conn); conn.Open(); mycomm.ExecuteNonQuery(); mycomm1.ExecuteNonQuery(); conn.Close();OracleCommandmy= new OracleCommand( "select * from conn.Open();OracleDataReader recu = my.ExecuteReader();if (recu.Read()+ this "','"+Tb_User where Uname='" + this "'"

49、; , conn);Response.Write( this this this this"<script>alert(".TextBox1.Text =.TextBox2.Text =.TextBox3.Text =.TextBox4.Text =添加成功!");</script>");HHHHHHHHelseResponse.Write( conn.Close();"<script>alert("添加失??!");</script>");protected void

50、 Button2_Click( object sender, EventArgse)this this this this.TextBox1.Text =.TextBox2.Text =.TextBox3.Text =.TextBox4.Text =HHHHHHHH2. 添加采購(gòu)員信息關(guān)鍵代碼protected void Button1_Click(object sender, EventArgs e) conn.Open(); mycomm.ExecuteNonQuery();conn.Close(); conn.Open();OracleDataReader recu = my.Execu

51、teReader(); if (recu.Read() Response.Write( else"<script>alert(" 添加成功!");</script>");Response.Write( conn.Close();protected void Button2_Click(object sender, EventArgs e)3. 添加提貨員信息關(guān)鍵代碼"<script>alert(" 添加失敗! ");</script>");protected void

52、 Button1_Click(object sender, EventArgs e) conn.Open(); mycomm.ExecuteNonQuery(); conn.Close(); conn.Open();OracleDataReader recu = my.ExecuteReader(); if (recu.Read() Response.Write("<script>alert(" else Response.Write("<script>alert(" conn.Close();protected void But

53、ton2_Click(object sender, EventArgs e) 第 6 章 結(jié)束語(yǔ)添加成功! ");</script>");添加失??! ");</script>");課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn)提出分析和解決實(shí)際問(wèn)題,鍛煉實(shí)踐能力的重要環(huán)節(jié)是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過(guò)程本次課程設(shè)計(jì)雖然很辛苦,實(shí)在是受益匪淺。本來(lái)這門(mén)課的知識(shí)學(xué)的就不夠扎實(shí),本次課程設(shè)計(jì),在設(shè)計(jì)過(guò)程中碰到了很多問(wèn)題,剛開(kāi)始要設(shè)計(jì)的時(shí)候,還真不知道從哪里下手但最終在圖書(shū)、同組人員的幫助下都得到了解決,讓我學(xué)會(huì)了好多書(shū)本上沒(méi)有的東西,通過(guò)本次課程設(shè)計(jì)我也能將課本上的知識(shí)融會(huì)貫通,起到了很好的輔助學(xué)習(xí)的效果,但是我發(fā)現(xiàn)我學(xué)到的知識(shí)比整整一個(gè)學(xué)期學(xué)到的都多。理論和實(shí)踐的相結(jié)合是學(xué)習(xí)最有效的方法。在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固,通過(guò)這次課程設(shè)計(jì)之后,一定把以

溫馨提示

  • 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)論