下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、設(shè)計思想 IV關(guān)鍵字 IV第一章選題說明 1第二章數(shù)據(jù)庫解構(gòu)2.1 概念解構(gòu)設(shè)計 32.2 邏輯結(jié)構(gòu)設(shè)計 72.3 物理結(jié)構(gòu)設(shè)計 7第三章數(shù)據(jù)庫設(shè)計3.1 安全控制 93.2 數(shù)據(jù)操作功能 103.3 視圖設(shè)計 113.4 存儲過程設(shè)計 123.5 代碼實現(xiàn) 13第四章系統(tǒng)初始化19第五章系統(tǒng)界面演示 2 3第六章總結(jié) 28致 30參考文獻 30【設(shè)計思想】經(jīng)過一學(xué)期來對數(shù)據(jù)庫系統(tǒng)概論這一課程的學(xué)習(xí),我學(xué)到了很多管理各 類數(shù)據(jù)的科學(xué)方法,也學(xué)會了如何在學(xué)習(xí)的過程中不斷的去實踐,根據(jù)已知去探索未知,這次設(shè)計就是一個很好的例子。由于本人很早就有了網(wǎng)絡(luò)創(chuàng)業(yè)的想法,也有很多計劃,其中以 O2O(Onl
2、ine to Offline )為經(jīng)營模式的網(wǎng)上超市一一虛擬商店,最為完備?,F(xiàn)在我就借此數(shù) 據(jù)庫課程設(shè)計的機會開始虛擬商店的管理系統(tǒng)設(shè)計過程。由于水平有限,對數(shù)據(jù)庫功能的掌握還不完善,因此本次課程設(shè)計就以虛擬商店管理系統(tǒng)中的倉庫管理 部分為主,以倉庫的數(shù)據(jù)庫建立過程為重點進行設(shè)計, 力求在完成這一部分的同 時更加深入地學(xué)習(xí)數(shù)據(jù)庫及相關(guān)知識,為今后系統(tǒng)的完成、乃至創(chuàng)業(yè)的成功打牢 基礎(chǔ)。我的大體設(shè)計思想如下:管理系統(tǒng)的數(shù)據(jù)庫部分采用MS SQL Server,界面部分為了方便日后開發(fā)而采用 JSP技術(shù)。即使用JDBCK術(shù)又t接JSP界面和SQL Server數(shù)據(jù)庫。數(shù)據(jù)庫設(shè)計方面面向?qū)嶋H完成基本的
3、建表、關(guān)聯(lián)、視圖、存儲 過程等;界面部分以驅(qū)動接口實現(xiàn)與數(shù)據(jù)庫的動態(tài)相連,并以簡潔卻不失詳細的界面實現(xiàn)常用的、個性化的功能。整個工程采用結(jié)構(gòu)化的方式進行推進,逐步完善系統(tǒng)功能。不論設(shè)計成功與否,我都要感老師給予我這次實踐的機會,讓我能夠正規(guī)、 完善、系統(tǒng)化地開發(fā)自己需要的軟件, 為即將面臨的畢業(yè)設(shè)計、工作實習(xí)做好充 分的準備。關(guān)鍵字:O2Q虛擬商店;數(shù)據(jù)庫;倉庫管理系統(tǒng)第一章選題說明O2O寸許多人來說也許還是一個陌生的詞,但在電子商務(wù)蓬勃發(fā)展的今天,O2O越來越活躍地出現(xiàn)在人們眼前。 O2O1P Online to Offline,也即將線下商務(wù)的機會與互聯(lián)網(wǎng)結(jié)合在了一起,讓互聯(lián)網(wǎng)成為線下交易
4、的前臺。該模式可以 實現(xiàn)顧客在網(wǎng)媒上對商品或服務(wù)進行消費,在線下便可獲取商品或享受服務(wù), 這極縮短了人們的購物流程、便利了人們的生活。必用族理加打耐口底第革' 曰事,離坳1晨晝a* 1/口您里卜:收薪防砧厥,若士-I(事笈虛擬商店便是這樣一種產(chǎn)物,他將傳統(tǒng)的超市與 B2c結(jié)合起來,用戶只用 花費很短的時間,在虛擬商店上選購好商品完成支付后,便可享受到虛擬商店 的打包、配送服務(wù),用戶可到超市店面、派發(fā)點、甚至自家門口(派送)領(lǐng)取 到所需的商品口口,I雷嫡V Wm號礎(chǔ)!可甲西榭1耳扛木送心定X .若片也甘匕口虛擬商店一一,快速購買方式kii扁鬲麟美我州,;招再' 但占點府亂:也比外
5、卡口 一出Hg五建京TH白洋谷打餐,后虧二沱融時大耳業(yè)工皿虛擬商店一一條碼掃面方式可見,虛擬商店的經(jīng)營模式?jīng)Q定了,要想實現(xiàn)這一流程,一個好的貨倉管 理系統(tǒng)是最基礎(chǔ)的,因為用戶的所有選購操作都是直接與倉庫對話的,而且如 今的倉庫作業(yè)和庫存控制作業(yè)已十分復(fù)雜化多樣化, 僅靠人工記憶和手工錄入, 不但費時費力,而且容易出錯,給企業(yè)帶來巨大損失。使用倉庫管理系統(tǒng),對 倉庫各環(huán)節(jié)實施全過程控制管理,并可對貨物進行貨位、批次、保質(zhì)期、配送 等管理,對整個收貨、發(fā)貨、補貨、集貨、送貨等各個環(huán)節(jié)的規(guī)化作業(yè)。本次課程設(shè)計就以其倉庫管理系統(tǒng)部分為課題,力求為虛擬商店構(gòu)想的實 現(xiàn)打下堅實的基礎(chǔ)第二章數(shù)據(jù)庫解構(gòu)該倉庫
6、管理系統(tǒng)部分需要完成的主要功能包含:a)基本資料管理:1 .供貨單位管理:設(shè)置并管理供貨商檔案,檔案信息包括客戶編號、客戶 名稱、地址、聯(lián)系人、聯(lián)系和備注信息。2 .收貨單位管理:設(shè)置并管理收貨單位檔案,檔案信息包括客戶編號、客 戶名稱、地址、聯(lián)系人、聯(lián)系和備注信息。3 .貨品檔案管理:檔案信息包括貨品名稱、編號、貨品描述、計量單位、 備注說明。4 .庫管人員設(shè)置:設(shè)置并管理倉庫管理人員。b)倉庫貨物進出管理:1 .貨品入倉管理:可以自動生成入庫單號,貨品及客戶選擇方便快捷,不 限制每筆入庫單貨物筆數(shù)。2 .貨品出倉管理:可以自動生成出庫單號,貨品及客戶選擇方便快捷,不 限制每筆出貨單貨物筆數(shù)
7、。3 .貨品盤點管理:可以自動生成盤點單號,貨品選擇方便快捷。c)庫存查詢及統(tǒng)計:1 .庫存查詢:可以隨時查詢各種貨品庫存,貨品自動分類匯總統(tǒng)計。2 .單據(jù)查詢:可以隨時查詢?nèi)霂?、出庫、盤點等各種貨物單據(jù)。3 .綜合查詢:可以隨時查詢不同時間段、憑證號、客戶、貨品等查詢條件 查詢?nèi)?、出、盤等數(shù)據(jù),并能對查詢數(shù)據(jù)進行統(tǒng)計匯總。d)庫存分析報警:1 .庫存上下限設(shè)置:可以設(shè)定倉庫庫存中各項貨品的庫存上下限。2 .庫存異常情況自動報警:自動對低于庫存下限或高于上限的品種進行報 警提示。2.1 概念結(jié)構(gòu)設(shè)計倉庫管理系統(tǒng)可以劃分的實體有:供貨單位信息實體、收貨單位信息實體、 貨品信息實體、計量單位信息實
8、體、倉管人員信息實體、貨品入倉信息實體、 貨品出倉信息實體、庫存上下限信息實體。供貨單位信息實體E-R圖:圖2-1供貨單位實體E-R圖收貨單位信息實體E-R圖:收貨單位實體客戶編客戶名稱聯(lián)系電話圖2-2收貨單位實體 E-R圖貨品檔案信息實體E-R圖:圖2-3貨品檔案實體E-R圖計量單位信息實體E-R圖:圖2-4計量單位實體E-R圖庫管人員信息實體E-R圖:圖2-5庫管人員實體E-R圖貨品入倉信息實體E-R圖:圖2-6貨品入倉信息實體 E-R圖貨品出倉信息實體E-R圖:出倉數(shù)量貨品名稱圖2-7貨品出倉信息實體 E-R圖貨品盤點信息實體E-R圖:圖2-8貨品盤點信息實體 E-R圖庫存上下限信息實體
9、E-R圖:圖2-9庫存上下限實體E-R圖2.2 邏輯結(jié)構(gòu)設(shè)計根據(jù)基本E-R圖,確定倉管系統(tǒng)關(guān)系模式為:線上客戶編號,客戶標志,客戶名稱,地址,聯(lián)系人,聯(lián)系,備注說明 , 主鍵是客戶編號。貨近貨品編號,貨品名稱,計量單位編號,貨品描述,備注說明 ,主鍵 是貨品編號0計量單位計量單位編號,計量單位,計量描述,主鍵是計量單位編號。庫管人員庫管人員編號,登錄,登錄密碼,用戶類型,備注說明,主鍵 是庫管人員編號。貨品入倉信息貨品入倉單號,貨品編號,入倉數(shù)量,入倉日期,庫管人員 編號,客戶編號,主鍵是貨品入倉單號。貨品出倉信息貨品出倉單號,貨品編號,出倉數(shù)量,出倉日期,庫管人員 編號,客戶編號,主鍵是貨品
10、出倉單號。貨品盤點信息貨品盤點單號、貨品編號,盤點數(shù)量,盤點日期,庫管人員 編號,主鍵是貨品盤點單號。庫存上下限信息貨品編號,庫存上限,庫存下限,主鍵是貨品編號。2.3 物理結(jié)構(gòu)設(shè)計表1: Customer客戶信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Customerld數(shù)值型否客戶編號CustomerType數(shù)值型1否客戶類型CustomerName文本型60否客戶名稱Address文本型180否地址Contact文本型20否聯(lián)系人ContactPhone文本型60否聯(lián)系Memo文本型800是備注說明表2: Goods貨品信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Goodsid數(shù)值型否貨品編號Goo
11、dsName文本型60否貨品名稱Measureid數(shù)值型否計量單位編號Describe文本型180是貨品描述Memo文本型800是備注說明表3: Measure計量單位信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Measureid數(shù)值型否計量單位編號MeasureName文本型20否計量單位名稱Describe文本型180是計量描述表4: Storeman庫管人員信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Storemanid數(shù)值型否庫管人員編號LoginName文本型16否登錄LoginPassword文本型8否登錄密碼Name文本型20否UserType數(shù)值型1否用戶類型Memo文本型800是備注說明
12、表5: Entryinfo貨品入倉信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Entryid數(shù)值型否貨品入倉單號Goodsid數(shù)值型否貨品編號EntryAmount數(shù)值型否入倉數(shù)量EntryDate日期型否入倉日期Storemanid數(shù)值型否庫管人員編號Customerid數(shù)值型否供貨客戶編號表6: Exportinfo貨品出倉信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Exportid數(shù)值型否貨品出倉單號Goodsid數(shù)值型否貨品編號ExportidAmount數(shù)值型否出倉數(shù)量ExportDate日期型否出倉日期Storemanid數(shù)值型否庫管人員編號Customerid數(shù)值型否收貨客戶編號表7: Ch
13、eckinfo貨品盤點信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Checkid數(shù)值型否貨品盤點單號Goodsid數(shù)值型否貨品編號CheckAmount數(shù)值型否盤點數(shù)量CheckDate日期型否盤點日期Storemanid數(shù)值型否庫管人員編號表8: StorehouseAlert庫存上下限信息表設(shè)計列名數(shù)據(jù)類型長度是否為空說明Goodsid數(shù)值型否貨品編號UpAlert數(shù)值型否庫存上限D(zhuǎn)ownAlert數(shù)值型否庫存卜限第三章數(shù)據(jù)庫設(shè)計3.1 安全控制倉管系統(tǒng)的用戶分如下幾類:系統(tǒng)管理員:具有系統(tǒng)的全部權(quán)限。庫管員:具有貨品出、入倉數(shù)據(jù)的維護權(quán)。盤點員:具有設(shè)置庫存上下限信息,貨品盤點數(shù)據(jù)的維護權(quán)。在
14、實現(xiàn)時,將每一類用戶作為一個角色實現(xiàn),這樣在授權(quán)時只需對角色授 權(quán),而無需對每個具體的用戶授權(quán)。3.2 數(shù)據(jù)操作功能數(shù)據(jù)操作功能包括對這些數(shù)據(jù)進行錄入、刪除、修改功能,具體如下:(1) 數(shù)據(jù)錄入包括對這8表的數(shù)據(jù)的錄入,只有具有相應(yīng)權(quán)限的用戶才能錄入相應(yīng)表中 的數(shù)據(jù)。(2) 數(shù)據(jù)刪除包括對這8表的數(shù)據(jù)的刪除,只有具有相應(yīng)權(quán)限的用戶才能刪除相應(yīng)表中 的數(shù)據(jù),刪除數(shù)據(jù)時要注意表之間的關(guān)聯(lián)關(guān)系,比如刪除計量單位信息表中的 數(shù)據(jù),必須貨品信息表中沒有貨品引用到該計量單位。另外,在實際進行刪除 之前應(yīng)該提醒用戶確認是否真的要刪除此數(shù)據(jù)。(3) 數(shù)據(jù)修改當某些數(shù)據(jù)發(fā)生變化或某些數(shù)據(jù)錄入不正確時,應(yīng)該允許用
15、戶對數(shù)據(jù)庫中 的數(shù)據(jù)進行修改,進行修改數(shù)據(jù)的操作時,一般時先根據(jù)一定條件查詢出要修 改的記錄,然后再對其中的某些記錄進行修改, 修改完后再寫回到數(shù)據(jù)庫中去, 同數(shù)據(jù)的錄入與刪除一樣,只有具有相應(yīng)權(quán)限的用戶才能修改相應(yīng)表中的數(shù)據(jù)。(4) 數(shù)據(jù)查詢在數(shù)據(jù)庫應(yīng)用系統(tǒng)中,數(shù)據(jù)查詢時最常用的功能,倉管系統(tǒng)應(yīng)具有的查詢 要求有:庫存查詢,查詢各種貨品實時庫存情況。單據(jù)查詢,查詢?nèi)霂?、出庫、盤點等各種貨物單據(jù)。綜合查詢,查詢不同時間段、憑證號、客戶、貨品等查詢條件查詢?nèi)?、出?盤等數(shù)據(jù)。庫存異常情況查詢,查詢低于庫存下限或高于上限的貨品數(shù)據(jù)。3.3 視圖設(shè)計對入倉操作,客戶只能選擇供貨客戶標志的客戶,對于出
16、倉操作,客戶只 能選擇收貨客戶標志的客戶,考慮到還有既是供貨客戶,又是收貨客戶的情況, 設(shè)計上用1代表供貨客戶標志,2代表收貨客戶標志,3代表既是供貨客戶也是 收貨客戶,雖然都是基于客戶信息表的查詢,顯示字段一樣,但由于數(shù)據(jù)圍不 同,可以通過設(shè)計供貨客戶視圖和收貨客戶視圖來實現(xiàn)。視圖1: View_SupplyCustomer供貨客戶視圖列名數(shù)據(jù)類型說明CustomerId數(shù)值型客戶編號CustomerName文本型客戶名稱Address文本型地址Contact文本型聯(lián)系人ContactPhone文本型聯(lián)系Memo備注說明條件:客戶標志字段等于1或者3視圖2: View_BuyCustomer
17、供貨客戶視圖列名數(shù)據(jù)類型說明CustomerId數(shù)值型客戶編號CustomerName文本型客戶名稱Address文本型地址Contact文本型聯(lián)系人ContactPhone文本型聯(lián)系Memo文本型備注說明條件:客戶標志字段等于2或者33.4 存儲過程設(shè)計a)庫存盤點存儲過程設(shè)計思路:1、判斷是否期初盤點,期初盤點則根據(jù)已有的入倉數(shù)據(jù)和出倉數(shù)據(jù),計算現(xiàn)庫存數(shù)量,如果沒有入倉數(shù)據(jù)和出倉數(shù)據(jù),則數(shù)量計為0,把結(jié)果數(shù)據(jù)插入盤點信息表,返回成功標志,程序結(jié)束;2、非期初盤點,則根據(jù)當前時間點找到最近一期的盤點數(shù)據(jù),再根據(jù)從該期盤點時間到當前時間點所有的入倉數(shù)據(jù)和出倉數(shù)據(jù),計算現(xiàn)庫存數(shù)量,把結(jié) 果數(shù)據(jù)插
18、入盤點信息表,返回成功標志,程序結(jié)束;3、考慮到貨品信息表會不定時更新,盤點表也要以最新的貨品信息表進行 愿:點0b)實時庫存情況存儲過程實時庫存情況存儲過程與庫存盤點存儲過程設(shè)計思路類似,但計算結(jié)果不 需寫到數(shù)據(jù)表,直接以數(shù)據(jù)集形式返回。設(shè)計思路:1、判斷是否已存在盤點數(shù)據(jù),如否則根據(jù)已有的入倉數(shù)據(jù)和出倉數(shù)據(jù), 計 算現(xiàn)庫存數(shù)量,如果沒有入倉數(shù)據(jù)和出倉數(shù)據(jù),則數(shù)量計為0,返回結(jié)果數(shù)據(jù)集,程序結(jié)束;2、如已存在盤點數(shù)據(jù),則根據(jù)當前時間點找到最近一期的盤點數(shù)據(jù),再根據(jù)從該期盤點時間到當前時間點所有的入倉數(shù)據(jù)和出倉數(shù)據(jù),計算現(xiàn)庫存數(shù)量,返回結(jié)果數(shù)據(jù)集,程序結(jié)束;3、考慮到貨品信息表會不定時更新,盤
19、點表也要以最新的貨品信息表進行 愿:點0c)查詢庫存異常情況存儲過程查詢庫存異常情況存儲過程是以設(shè)置庫存上下限數(shù)據(jù),對實時庫存情況進 行計算,返回低于庫存下限或高于上限的貨品數(shù)據(jù)設(shè)計思路:1、根據(jù)庫存上下限的數(shù)據(jù),限定計算實時庫存的貨品圍;2、判斷是否已存在盤點數(shù)據(jù),如否則根據(jù)已有的入倉數(shù)據(jù)和出倉數(shù)據(jù),計 算現(xiàn)庫存數(shù)量,返回低于庫存下限或高于上限的貨品數(shù)據(jù)集,程序結(jié)束;3、如已存在盤點數(shù)據(jù),則根據(jù)當前時間點找到最近一期的盤點數(shù)據(jù), 再根 據(jù)從該期盤點時間到當前時間點所有的入倉數(shù)據(jù)和出倉數(shù)據(jù), 計算現(xiàn)庫存數(shù)量, 返回低于庫存下限或高于上限的貨品數(shù)據(jù)集,程序結(jié)束。3.5代碼實現(xiàn)a)創(chuàng)建數(shù)據(jù)庫USE
20、 masterGOCREATE DATABASE storehouseON(NAME ='storehouse',FILENAME = 'c:storehouse.mdf,SIZE = 10MB,MAXSIZE = 50MB,FILEGROWTH = 5MB )LOG ON(NAME = 'storehouse_log', FILENAME = 'c:storehouse.ldf, SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB )GOb)客戶信息表建立CREATE TABLE Customer(Cust
21、omerId int IDENTITY( 1,1) NOT NULL PRIMARY KEYCustomerType tinyint NOT NULL DEFAULT。),CustomerName varchar(60) NOT NULL,Address varchar(180) NOT NULL,Contact varchar(20) NOT NULL,ContactPhone varchar(60) NOT NULL,Memo varchar(800) NULL)c)計量單位信息表建立CREATE TABLE Measure(MeasureId int IDENTITY(1,1) NOT
22、NULL PRIMARY KEY,MeasureName varchar(20) NOT NULL,Describe varchar(180) NULL)d)貨品信息表建立CREATE TABLE Goods(GoodsId int IDENTITY(1,1) NOT NULL PRIMARY KEY,GoodsName varchar(60) NOT NULL,MeasureId int NOT NULL,Describe varchar(180) NULL,Memo varchar(800) NULL,FOREIGN KEY (MeasureId) REFERENCES Measure (
23、MeasureId)e) 庫管人員信息表設(shè)計CREATE TABLE Storeman(StoremanId int IDENTITY(1,1) NOT NULL PRIMARY KEY,LoginName varchar(16) NOT NULL,LoginPassword varchar(8) NOT NULL,Name varchar(20) NOT NULL,UserType tinyint NOT NULL DEFAULT(1),Memo varchar(800) NULL)f) 貨品入倉信息表建立CREATE TABLE EntryInfo(EntryId int IDENTITY
24、(1,1) NOT NULL PRIMARY KEY,GoodsId int NOT NULL,EntryAmount int NOT NULL,EntryDate datetime NOT NULL DEFAULT(getdate(),Storemanld int NOT NULL,Customerld int NOT NULL,FOREIGN KEY (Goodsld) REFERENCES Goods (Goodsld),FOREIGN KEY (StoremanId) REFERENCES Storeman (StoremanId), FOREIGN KEY (CustomerId)
25、REFERENCES Customer (CustomerId) )g)品出倉信息表建立CREATE TABLE ExportInfo(ExportId int IDENTITY(1,1) NOT NULL PRIMARY KEY,GoodsId int NOT NULL,ExportAmount int NOT NULL,ExportDate datetime NOT NULL DEFAULT(getdate(),StoremanId int NOT NULL,CustomerId int NOT NULL,FOREIGN KEY (GoodsId) REFERENCES Goods (Go
26、odsId),FOREIGN KEY (StoremanId) REFERENCES Storeman (StoremanId), FOREIGN KEY (CustomerId) REFERENCES Customer (CustomerId) )h)貨品盤點信息表建立CREATE TABLE CheckInfo(CheckId int IDENTITY(1,1) NOT NULL PRIMARY KEY,GoodsId int NOT NULL,CheckAmount int NOT NULL,CheckDate datetime NOT NULL DEFAULT(getdate(),St
27、oremanId int NOT NULL,CustomerId int NOT NULL,FOREIGN KEY (GoodsId) REFERENCES Goods (GoodsId),FOREIGN KEY (StoremanId) REFERENCES Storeman (StoremanId), FOREIGN KEY (CustomerId) REFERENCES Customer (CustomerId)i) 庫存上下限信息表建立CREATE TABLE StorehouseAlert(GoodsId int NOT NULL PRIMARY KEY,UpAlert int NO
28、T NULL,DownAlert int NOT NULL,FOREIGN KEY (GoodsId) REFERENCES Goods (GoodsId) )j) 供貨客戶視圖建立CREATE VIEW View_SupplyCustomerASSelect CustomerId,CustomerName,Address,Contact,ContactPhone,MemoFROM CustomerWhere CustomerType=1 or CustomerType=3k)收貨客戶視圖建立CREATE VIEW View_BuyCustomerASSelect CustomerId,Cus
29、tomerName,Address,Contact,ContactPhone,MemoFROM CustomerWhere CustomerType=2 or CustomerType=3l)庫存盤點存儲過程建立CREATE PROCEDURE Procedure_storecheckstoremanid intASDeclare lastcheckdate datetimeSelect lastcheckdate=max(Checkdate) from CheckInfoIf ROWCOUNT =0Insert into CheckInfo(GoodsId,CheckAmount,Check
30、Date,StoremanId)Select Goodsid,CheckAmount=(select isnull(sum(EntryAmount),0) from Entryinfo where Goodsid=a.Goodsid)-(select isnull(sum(ExportAmount),0) from Exportinfo where Goodsid=a.Goodsid),getdate(),storemanid from Goods aElseinsert into Checkinfo(Goodsid,CheckAmount,CheckDate,Storemanid)Selec
31、t Goodsid,CheckAmount=(select isnull(CheckAmount,0) from Checkinfo where Goodsid=a.Goodsid and Checkdate=lastcheckdate)+(selectisnull(sum(EntryAmount),0) from Entryinfo where Goodsid=a.Goodsid and EntryDate>=lastcheckdate)-(select isnull(sum(ExportAmount),0) from Exportinfowhere Goodsid=a.Goodsid
32、 andExportDate>=lastcheckdate),getdate(),storemanid from Goods am)實時庫存情況存儲過程建立CREATE PROCEDURE Procedure_storerealASDeclare lastcheckdate datetimeSelect lastcheckdate=max(Checkdate) from Checkinfoif ROWCOUNT =0Select a.GoodsName,b.MeasureName,CheckAmount=(selectisnull(sum(EntryAmount),0) from Ent
33、ryinfo where Goodsid=a.Goodsid)-(select isnull(sum(ExportAmount),0) from Exportinfo where Goodsid=a.Goodsid) from Goods a,Measure b where a.Measureid=b.MeasureidElseSelect a.GoodsName,b.MeasureName,CheckAmount=(select isnull(CheckAmount,0) fromCheckinfo where Goodsid=a.Goodsid and Checkdate=lastchec
34、kdate)+(select isnull(sum(EntryAmount),0) from Entryinfo where Goodsid=a.Goodsid and EntryDate>=lastcheckdate)-(select isnull(sum(ExportAmount),0) from Exportinfo where Goodsid=a.Goodsid and ExportDate>=lastcheckdate) from Goods a,Measure b where a.Measureid=b.Measureidn)查詢庫存異常情況存儲過程建立CREATE P
35、ROCEDURE Procedure_storealertASCreate TABLE #1(Goodsid int,CheckAmount int,UpAlert int,DownAlert int)Declare lastcheckdate datetimeSelect lastcheckdate=max(Checkdate) from CheckInfoIf ROWCOUNT =0Insert into #1(Goodsid,CheckAmount,UpAlert,DownAlert)Select a.Goodsid,CheckAmount=(select isnull(sum(Entr
36、yAmount),0) from EntryInfo where GoodsId=a.GoodsId)-(select isnull(sum(ExportAmount),0) from ExportInfo where GoodsIs=a.GoodsId),b.UpAlert,b.DownAlert from Goods a,StorehouseAlert b where a.GoodsId=b.GoodsIdElseInsert into #1(Goodsid,CheckAmount,UpAlert,DownAlert)Select a.Goodsid,CheckAmount=(select
37、 isnull(CheckAmount,0) from Checkinfo where GoodsId=a.GoodsId and Checkdate=lastcheckdate)+(select isnull(sum(EntryAmount),0) from EntryInfo where GoodsId=a.GoodsId and EntryDate>=lastcheckdate)-(select isnull(sum(ExportAmount),0) from ExportInfo where GoodsId=a.GoodsId and ExportDate>=lastche
38、ckdate) ,b.UpAlert,b.DownAlert from Goods a,StorehouseAlert b where a.GoodsId=b.GoodsIdSelect b.GoodsName,c.MeasureName,a.UpAlert,a.DownAlert,a.CheckAlert from #1 a,Goods b, Measure c where a.GoodsId=b.GoodsId and b.MeasureId=c.MeasureId and (a.CheckAmount>a.Upalert or a.CheckAmount <a.DownAle
39、rt)第四章系統(tǒng)初始化a)將客戶信息加入到Customer表Insert intoCustomer(customertype,customername,address,contact,contactphone)Values(1,'客戶1','客戶地址1','客戶聯(lián)系人1','客戶聯(lián)系1')Insert intoCustomer(customertype,customername,address,contact,contactphone)Values(1,客戶2',客戶地址2',客戶聯(lián)系人2',客戶聯(lián)系2
40、39;)Insert intoCustomer(customertype,customername,address,contact,contactphone)Values(2,客戶3',客戶地址3',客戶聯(lián)系人3',客戶聯(lián)系3')Insert intoCustomer(customertype,customername,address,contact,contactphone)Values(3,客戶4',客戶地址4',客戶聯(lián)系人4',客戶聯(lián)系4')b) 將計量信息加入Measure表Insert into Measure(meas
41、urename,describe) values(' 箱', 計量單位描述 1')Insert into Measure(measurename,describe) values(' 包; 計量單位描述 2')c) 將貨品信息加入Goods表Insert into Goods(goodsname,measureid,describe) values(' 貨品 1',1,' 貨品描述1,)Insert into Goods(goodsname,measureid,describe) values(' 貨品 2',1,
42、' 貨品描述2,)Insert into Goods(goodsname,measureid,describe) values(' 貨品 3',2,' 貨品描述3,)d)將庫管人員信息加入Storeman表Insert into Storeman(loginname,loginpassword,name,usertype) values('ceshi1', '123',' 測試 1',1)Insert into Storeman(loginname,loginpassword,name,usertype)value
43、s('ceshi2', '123',測試2',2)e)添加貨品入倉記錄Insert intoEntryInfo(goodsid,entryamount,entrydate,storemanid,customerid) values(1,10, '2011-1-1',1,1)Insert intoEntryInfo(goodsid,entryamount,entrydate,storemanid,customerid) values(2,8, '2011-1-1',1,1)Insert intoEntryInfo(goods
44、id,entryamount,entrydate,storemanid,customerid) values(1,10, '2011-1-2',1,1)Insert intoEntryInfo(goodsid,entryamount,entrydate,storemanid,customerid) values(1,2, '2011-1-3',1,1)Insert intoEntryInfo(goodsid,entryamount,entrydate,storemanid,customerid) values(2,5, '2011-1-4',1,
45、1)f) 添加貨品出倉記錄Insert intoExportInfo(goodsid,exportamount,exportdate,storemanid,customerid) values(1,2,'2011-1-2',1,3)Insert intoExportInfo(goodsid,exportamount,exportdate,storemanid,customerid) values(1,3, '2011-1-2',1,4)Insert intoExportInfo(goodsid,exportamount,exportdate,storemanid
46、,customerid) values(2,6, '2011-1-2',1,4)Insert intoExportInfo(goodsid,exportamount,exportdate,storemanid,customerid) values(2,3, '2011-1-5',1,3)g)添加庫存上下限記錄Insert into StorehouseAlert(goodsid,upalert,downalert) values(1,100,5)Insert into StorehouseAlert(goodsid,upalert,downalert) valu
47、es(2,100,5)a) 系統(tǒng)連接(使用JDBD Driver ):Import java.sql.*;Class.forName( " .microsoft.jdbc.sqlserver.SQLServerDriver " );tryClass.forName( ".microsoft.jdbc.sqlserver.SQLServerDriver " );ca tch(ClassNotFoundException e)System.out.println( "Driver Not Found" );b)查詢功能關(guān)鍵代碼:<%
48、 page contentType="text/html;charset=utf-8"%><% page import="java.sql.*"%><html><body><%Class.forName(".microsoft.jdbc.sqlserver.SQLServerDriver").newInst ance();Stringurl="jdbc:microsoft:sqlserver:/192.168.1.11:1433;DatabaseName=store house
49、"String user="sa"String password=""Connection conn= DriverManager.getConnection(url,user,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet. CONCUR_UPDATABLE);/String sql="select * from customer"ResultSet rs=stmt.executeQuery(sql
50、);while(rs.next() %>第一行:<%=rs.getString(1)%>/ 第二行:<%=rs.getString(2)%><%>/<%out.print("查詢完畢");%><%rs.close();stmt.close();conn.close();%></body></html>第五章系統(tǒng)界面演示登陸入口 :虛掇后翻,毛史亞用戶登錄晝景球號,匕rrs /手機號g ,用戶3密四??梢杂煤献鞒霭殁餗節(jié)錄虛機由桂:艮微淳 可期 開心網(wǎng) MBN 人人同進入倉庫管理選項卡單
51、表查詢:表 customer的 SQL Server查詢:select Iren customerJU年早-J消息CuslDnirldlCuslDmeiTpeCu3lonitibldiihtAddiwsCuntdLtCcrila 二戶 wr 匕MtjnoQri 1碧尸1客戶地址1客戶聯(lián)聚入1客戶勝基電詁1KULL21客戶2客戶地址2客戶聯(lián)系人2客戶聯(lián)系電話2NULL3z客戶3客二地址3客尸聯(lián)系人3客二聯(lián)手電話3NULL1£3雪網(wǎng)客,口博批客尸聯(lián)辭客口賬茶電話上NULL對應(yīng)的系統(tǒng)界面查詢: 暮理 EICVK1fa巾碗口MEITMH8-J-f甘amstMMB產(chǎn)E:鼻 II 11需巴KfW
52、JaW FH J d 1EFVrirftuj.r1網(wǎng)ERm:EPFE*&kuL1t1.P5t.PVJJ.3PFEM?I.Un>W*E=mii雪mrKi廣.i由aw廣MABW 廣 IMF 寸修 1 Xl各表不一一枚舉視圖查詢: 視圖 View_SupplyCustomer 的 SQL Server查詢:select / from Vie¥_SuuplvCustoner 盲結(jié)黑口洎息|Custonertd CustomerN ame Adctets Con tad:ContactPhore Memo El MUEIIliaJill &»Li客戶1客尸地止1
53、客戶聯(lián)系人1客戶聯(lián)系范話1NULL4l_l a 111-1 Mill 41#22客戶2落戶地ita客戶取樂人2客戶錢泵電話2NULL34客戶4客尸皚止4否尸啾東人4富戶窿系史話4NULL對應(yīng)的系統(tǒng)界面查詢:mhluhzamai1FiWr>aiK隼 PREAB耳P"Eusrp?客二St!«aBSA?客口vur4戶f HKAi 口察收4f.UF«Si 廣產(chǎn) RlElMt rih-tr 3 aa|視圖 View_BuyCustomer 的 SQL Server查詢:select * Erom Viev_EuyCustornetrE1延星國消息Cuitarreri
54、dCLutonerKarioAddressCortmdCohtactPhoneMemia1;3客。a害尸地址3客戶期43客戶聯(lián)泵電話3NULL2dCP4窖尸地址4富戶期人宣F麟事.電話dMULL對應(yīng)的系統(tǒng)界面查詢:多表查詢:貨品名稱為“貨品1”的入庫記錄的SQL Server查詢:se Lee t貨品名:降'-go ri: 3 n-me , 1 H ft: 1 -sntr vdate 1人看二三 "ten try-BniiE unt P 十壬 當-me asuc e nenie正工hr entzy 1 nl:D ar gacada' li. meH.3uLt- U trhere a.工d-ti. g口口dmn_dl aifrd Jb .ixeasuz e1 id"c .aeaaLle e 1 d b goetiLMMi. f 貨品 j*iiO紂果I _j HA售易包fitAftS.i+Sii-:傍肛”1 200Mlm mm力nooti 幗 隹2 '昭麗-I 200軸ISOO RJOWQ 10苒3 重晶izajMii-a m o-aaom 2 特對應(yīng)的系統(tǒng)界面查詢:實時庫存的SQL Server查詢:pro cedi-ire _a?t 口二: 匚 一口 1|
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中式面點師技能培訓(xùn)合同
- 2025年編程興趣班合同協(xié)議
- 2025年社區(qū)圖書館五年規(guī)劃:數(shù)字化資源與便民服務(wù)技術(shù)應(yīng)用行業(yè)報告
- 3D打印技術(shù)在醫(yī)學(xué)教育應(yīng)用推廣中的策略
- 精致實景項目招商推介計劃書模板
- 2025年安慶市宿松縣衛(wèi)生健康事業(yè)發(fā)展服務(wù)中心選調(diào)備考題庫及答案詳解1套
- 2025年湛江市麻章區(qū)大學(xué)生鄉(xiāng)村醫(yī)生專項計劃招聘備考題庫及一套答案詳解
- 噬血細胞綜合征診斷與治療指南總結(jié)2026
- 曲靖經(jīng)開區(qū)卓然學(xué)校2026年儲備教師招聘備考題庫及1套完整答案詳解
- 簡約風(fēng)灰色畢業(yè)論文答辯
- 運動控制系統(tǒng)安裝與調(diào)試(第2版)習(xí)題及答案匯 甄久軍 項目1-5
- 部編版九年級語文上冊教科書(課本全冊)課后習(xí)題參考答案
- 二零二五年度個人住房貸款展期協(xié)議書3篇
- 2024項目建設(shè)工作總結(jié)(31篇)
- 通信工程建設(shè)標準強制性條文匯編(2023版)-定額質(zhì)監(jiān)中心
- 大數(shù)據(jù)與會計專業(yè)實習(xí)報告?zhèn)€人小結(jié)
- 人工智能原理與方法智慧樹知到期末考試答案章節(jié)答案2024年哈爾濱工程大學(xué)
- DB34-T 4704-2024 托幼機構(gòu)消毒技術(shù)規(guī)范
- GB/T 10599-2023多繩摩擦式提升機
- 高速鐵路線路軌道設(shè)備檢查-靜態(tài)檢查
- GB/T 43309-2023玻璃纖維及原料化學(xué)元素的測定X射線熒光光譜法
評論
0/150
提交評論