數(shù)據(jù)庫(kù)課程設(shè)計(jì)-中小型企業(yè)進(jìn)銷存管理系統(tǒng)_第1頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-中小型企業(yè)進(jìn)銷存管理系統(tǒng)_第2頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-中小型企業(yè)進(jìn)銷存管理系統(tǒng)_第3頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-中小型企業(yè)進(jìn)銷存管理系統(tǒng)_第4頁(yè)
數(shù)據(jù)庫(kù)課程設(shè)計(jì)-中小型企業(yè)進(jìn)銷存管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1. 需求分析1.1 問(wèn)題的提出傳統(tǒng)的信息傳遞和管理方式不僅效率低, 可靠性、安全性和保密性也無(wú)法滿足要求, 而且數(shù)據(jù)統(tǒng)計(jì)時(shí)間嚴(yán)重滯后, 往往是當(dāng)領(lǐng)導(dǎo)了解到企業(yè)的 “進(jìn)、銷、存”出現(xiàn)問(wèn)題時(shí), 早已產(chǎn)生了嚴(yán)重的后果。即使是沒(méi)有分公司的企業(yè),使用傳統(tǒng)的手工放肆管理也存在同樣的問(wèn)題:信息化不足,計(jì)算機(jī)使用率低,大量的日常工作皆是手工處理,導(dǎo)致工作效率低落,企業(yè)內(nèi)部溝通不良等等問(wèn)題很難克服,倉(cāng)庫(kù)管理很不合理,不能及時(shí)根據(jù)需要調(diào)整庫(kù)存。而且在手工管理的情況下,銷售人員很難對(duì)客戶做出正確的供貨承諾,同時(shí)企業(yè)的生產(chǎn)部門也缺少一份準(zhǔn)確的生產(chǎn)計(jì)劃,目前的生產(chǎn)狀況和市場(chǎng)的需求很難正確反映到生產(chǎn)中去。這在激烈的市場(chǎng)

2、中是非常不利的。1.2 問(wèn)題分析傳統(tǒng)的信息傳遞和管理方式不僅效率低, 可靠性、安全性和保密性也無(wú)法滿足要求, 而且數(shù)據(jù)統(tǒng)計(jì)時(shí)間嚴(yán)重滯后, 往往是當(dāng)領(lǐng)導(dǎo)了解到企業(yè)的 “進(jìn)、銷、存”出現(xiàn)問(wèn)題時(shí), 早已產(chǎn)生了嚴(yán)重的后果。使用傳統(tǒng)的手工放肆管理也存在同樣的問(wèn)題:信息化不足,計(jì)算機(jī)使用率低,大量的日常工作皆是手工處理,導(dǎo)致工作效率低落,企業(yè)內(nèi)部溝通不良等等問(wèn)題很難克服,倉(cāng)庫(kù)管理很不合理,不能及時(shí)根據(jù)需要調(diào)整庫(kù)存。而且在手工管理的情況下,銷售人員很難對(duì)客戶做出正確的供貨承諾,同時(shí)企業(yè)的生產(chǎn)部門也缺少一份準(zhǔn)確的生產(chǎn)計(jì)劃,目前的生產(chǎn)狀況和市場(chǎng)的需求很難正確反映到生產(chǎn)中去。這在激烈的市場(chǎng)中是非常不利的。通過(guò)本次

3、數(shù)據(jù)庫(kù)的課程設(shè)計(jì)具體要求,結(jié)合當(dāng)前社會(huì)中小型企業(yè)進(jìn)銷存數(shù)據(jù)管理的一些普遍問(wèn)題,我們認(rèn)為本次設(shè)計(jì)的數(shù)據(jù)庫(kù)系統(tǒng)需要有以下功能:(1)要求系統(tǒng)具有良好的可視化界面。(2)如果系統(tǒng)的使用對(duì)象(包括用戶和系統(tǒng)管理員)較多,則要求有較好的權(quán)限管理。(3)方便的數(shù)據(jù)查詢,可能需要建立某些索引,支持多條件查詢。(4)每一次進(jìn)貨和銷售必須有對(duì)應(yīng)的唯一編號(hào)作為記錄。(5)保證采購(gòu)部門與客戶和供應(yīng)商往來(lái)賬本明細(xì),絕不存在假賬、漏賬、差賬等情況。(6)對(duì)商品的存放管理,包括庫(kù)存數(shù)量以及存放的倉(cāng)庫(kù)等。(7)當(dāng)外界環(huán)境(停電、網(wǎng)絡(luò)病毒)干擾本系統(tǒng)時(shí),系統(tǒng)可以自動(dòng)保護(hù)原始數(shù)據(jù)的安全。(8)在相應(yīng)的權(quán)限下,刪除數(shù)據(jù)方便簡(jiǎn)單、

4、數(shù)據(jù)穩(wěn)定性強(qiáng)。(9)若采購(gòu)部門臨時(shí)退訂或者是客戶臨時(shí)退單,系統(tǒng)也應(yīng)能做出相應(yīng)反饋。 以訂單為依據(jù)進(jìn)行生產(chǎn)的實(shí)業(yè)公司的主要流程是:接到一張銷售訂單,由銷售部門轉(zhuǎn)化為采購(gòu)訂單,轉(zhuǎn)給采購(gòu)部門,采購(gòu)部門根據(jù)訂單上的產(chǎn)品、數(shù)量,技術(shù)部已經(jīng)配好的物料清單,及各車間半成品儲(chǔ)存量,匯總材料需求,然后根據(jù)庫(kù)存情況決定請(qǐng)購(gòu)及預(yù)約情況,采購(gòu)部門根據(jù)請(qǐng)購(gòu)單下采購(gòu)單,然后材料入庫(kù),在手工操作的條件下,各個(gè)部門之間的溝通困難,比如,當(dāng)采購(gòu)部下完采購(gòu)訂單之后,倉(cāng)庫(kù)是否如期到貨,必須去倉(cāng)庫(kù)詢問(wèn),而且即使詢問(wèn)了,有時(shí)候因?yàn)橛唵屋^多材料有可能重復(fù),而無(wú)法確定是哪一張采購(gòu)單到貨,哪一張沒(méi)有到貨,再例如,銷售部門下過(guò)內(nèi)部訂單之后,就

5、容易了解到這個(gè)單子上的這批貨物到底處于什么狀態(tài),是已發(fā)完,還是未發(fā),生產(chǎn)是否完畢等,要無(wú)數(shù)次的詢問(wèn)倉(cāng)庫(kù)和生產(chǎn)部門才能了解到部分情況,等等,這一系列的問(wèn)題迫待解決,隨著經(jīng)濟(jì)的全球化以及中國(guó)經(jīng)濟(jì)改革的逐漸深化,制造業(yè)面臨著越來(lái)越激烈的競(jìng)爭(zhēng),改善企業(yè)內(nèi)部以及整個(gè)供應(yīng)鏈各個(gè)環(huán)節(jié)的管理、調(diào)度及資源配置,迅速適應(yīng)客戶的新需求和市場(chǎng)新機(jī)遇的能力,是中國(guó)企業(yè)贏得競(jìng)爭(zhēng)勝利的決定性因素,如何快速有效地實(shí)現(xiàn)跟單,如何有效的控制庫(kù)存,這一切都是本進(jìn)銷存管理系統(tǒng)所力求實(shí)現(xiàn)的功能。從根本上說(shuō),企業(yè)就是一個(gè)利用資源(人、財(cái)、物、時(shí)間),為客戶創(chuàng)造價(jià)值的組織,企業(yè)資源計(jì)劃就是對(duì)這些資源進(jìn)行計(jì)劃、調(diào)度、控制、衡量、改進(jìn)的管理技

6、術(shù)和信息系統(tǒng)?,F(xiàn)今的企業(yè)并不只是人力資源、資金和產(chǎn)品的組合,它還應(yīng)該包括供應(yīng)、銷售、市場(chǎng)營(yíng)銷、客戶服務(wù)、需求預(yù)測(cè),以及其他更多的東西。如果一個(gè)企業(yè)資源計(jì)劃系統(tǒng)系統(tǒng)真正想要最大限度地提高其生產(chǎn)能力,它必須能夠非常融洽地和其他關(guān)鍵性的商務(wù)領(lǐng)域進(jìn)行交流。2系統(tǒng)設(shè)計(jì)目標(biāo)21 系統(tǒng)設(shè)計(jì)的長(zhǎng)遠(yuǎn)目標(biāo)1 系統(tǒng)運(yùn)行集成化:這是系統(tǒng)成功在技術(shù)解決方案方面最基本的表現(xiàn)。系統(tǒng)是對(duì)企業(yè)物流、資金流、信息流進(jìn)行一體化管理的軟件系統(tǒng),其核心管理思想就是實(shí)現(xiàn)對(duì)“供應(yīng)鏈(Supply Chain)”的管理。軟件的應(yīng)用將跨越多個(gè)部門甚至多個(gè)企業(yè)。為了達(dá)到預(yù)期設(shè)定的應(yīng)用目標(biāo),最基本的要求是系統(tǒng)能夠運(yùn)行起來(lái),實(shí)現(xiàn)集成化應(yīng)用,建立企業(yè)

7、決策完善的數(shù)據(jù)體系和信息共享機(jī)制。 一般來(lái)說(shuō),如果系統(tǒng)僅在財(cái)務(wù)部門應(yīng)用,只能實(shí)現(xiàn)財(cái)務(wù)管理規(guī)范化、改善應(yīng)收帳款和資金管理;僅在銷售部門應(yīng)用,只能加強(qiáng)和改善營(yíng)銷管理;僅在庫(kù)存管理部門應(yīng)用,只能幫助掌握存貨信息;僅在生產(chǎn)部門應(yīng)用只能輔助制定生產(chǎn)計(jì)劃和物資需求計(jì)劃。只有集成一體化運(yùn)行起來(lái),才有可能達(dá)到:降低庫(kù)存,提高資金利用率和控制經(jīng)營(yíng)風(fēng)險(xiǎn);控制產(chǎn)品生產(chǎn)成本,縮短產(chǎn)品生產(chǎn)周期;提高產(chǎn)品質(zhì)量和合格率;減少財(cái)務(wù)壞帳、呆帳金額等。這些目標(biāo)能否真正達(dá)到,還要取決于企業(yè)業(yè)務(wù)流程重組的實(shí)施效果。2業(yè)務(wù)流程合理化:這是系統(tǒng)成功在改善管理效率方面的體現(xiàn)。系統(tǒng)成功的前提是必須對(duì)企業(yè)實(shí)施業(yè)務(wù)流程重組,因此,企業(yè)資源計(jì)劃應(yīng)

8、用成功也即意味著企業(yè)業(yè)務(wù)處理流程趨于合理化,并實(shí)現(xiàn)了企業(yè)資源計(jì)劃應(yīng)用的以下幾個(gè)最終目標(biāo):企業(yè)競(jìng)爭(zhēng)力得到大幅度提升;企業(yè)面對(duì)市場(chǎng)的響應(yīng)速度大大加快;客戶滿意度顯著改善。3績(jī)效監(jiān)控動(dòng)態(tài)化:企業(yè)資源計(jì)劃的應(yīng)用,將為企業(yè)提供豐富的管理信息。如何用好這些信息并在企業(yè)管理和決策過(guò)程中真正起到作用,是衡量企業(yè)資源計(jì)劃應(yīng)用成功的另一個(gè)標(biāo)志。在企業(yè)資源計(jì)劃系統(tǒng)完全投入實(shí)際運(yùn)行后,企業(yè)應(yīng)根據(jù)管理需要,利用企業(yè)資源計(jì)劃系統(tǒng)提供的信息資源設(shè)計(jì)出一套動(dòng)態(tài)監(jiān)控管理績(jī)效變化的報(bào)表體系,以期即時(shí)反饋和糾正管理中存在的問(wèn)題。這項(xiàng)工作,一般是在企業(yè)資源計(jì)劃系統(tǒng)實(shí)施完成后由企業(yè)設(shè)計(jì)完成。企業(yè)如未能利用企業(yè)資源計(jì)劃系統(tǒng)提供的信息資源

9、建立起自己的績(jī)效監(jiān)控系統(tǒng),將意味著企業(yè)資源計(jì)劃系統(tǒng)應(yīng)用沒(méi)有完全成功。4合理改善持續(xù)化:隨著企業(yè)資源計(jì)劃系統(tǒng)的應(yīng)用和企業(yè)業(yè)務(wù)流程的合理化,企業(yè)管理水平將會(huì)明顯提高。為了衡量企業(yè)管理水平的改善程度,可以依據(jù)管理咨詢公司提供的企業(yè)管理評(píng)價(jià)指標(biāo)體系對(duì)企業(yè)管理水平進(jìn)行綜合評(píng)價(jià)。評(píng)價(jià)過(guò)程本身并不是目的,為企業(yè)建立一個(gè)可以不斷進(jìn)行自我評(píng)價(jià)和不斷改善管理的機(jī)制,才是真正目的。這也是ERP 應(yīng)用成功的一個(gè)經(jīng)常不被人們重視的標(biāo)志。22 系統(tǒng)設(shè)計(jì)近期目標(biāo)1.在提高企業(yè)經(jīng)濟(jì)效益、增強(qiáng)企業(yè)市場(chǎng)競(jìng)爭(zhēng)力方面:提高客戶服務(wù)效益, 降低客戶服務(wù)成本;提高物料管理效益, 降低物料管理成本;提高生產(chǎn)管理效益, 降低生產(chǎn)管理成本;提

10、高質(zhì)量效益, 降低質(zhì)量成本;提高采購(gòu)效益, 降低采購(gòu)成本;提高生產(chǎn)效益,降低生產(chǎn)成本;提高用料效率,降低用料成本;提高庫(kù)存效率,降低庫(kù)存成本。2. 在系統(tǒng)應(yīng)用方面:降低企業(yè)信息系統(tǒng)的總體擁有與使用成本,增強(qiáng)企業(yè)活力:提高處理效率,降低硬件成本;提供友好界面,降低培訓(xùn)成本;提供靈活接口,降低擴(kuò)充成本;提高使用效率,降低作業(yè)成本;提高溝通效率,降低溝通成本;提高維護(hù)效率,降低維護(hù)成本;加強(qiáng)系統(tǒng)糾錯(cuò),降低失誤成本;提高數(shù)據(jù)安全,降低保密成本。系統(tǒng)設(shè)計(jì)近期的目標(biāo)是實(shí)現(xiàn)企業(yè)進(jìn)銷存管理系統(tǒng)的系統(tǒng)化,規(guī)范化和自動(dòng)化。(1)建立基本資料信息庫(kù),規(guī)范所有資料信息。(2)物料控制半自動(dòng)化,加強(qiáng)了各個(gè)部門之間的聯(lián)系

11、。(3)高庫(kù)存管理的服務(wù)水平,最大限度地降低庫(kù)存量,包括中間庫(kù)存和在制品的庫(kù)存,以減少在庫(kù)存上的資金積壓。(4)最大限度的保證訂貨任務(wù)的按期完成。(5)提高計(jì)劃的可能性,實(shí)現(xiàn)均衡生產(chǎn):(6)集成管理職能,提高管理效率。3系統(tǒng)總體設(shè)計(jì)31 系統(tǒng)設(shè)計(jì)思想此系統(tǒng)為中小型企業(yè)量身定做,以訂單貫穿始終的進(jìn)銷存系統(tǒng),系統(tǒng)設(shè)計(jì)如下:1. 以訂單流為主線,以銷售訂購(gòu),將物流、訂單流、信息流有機(jī)結(jié)合的完美系統(tǒng);2. 能對(duì)不同產(chǎn)品進(jìn)行分類管理及相應(yīng)的貨位管理;3. 是真正的B/S架構(gòu),簡(jiǎn)單易用的應(yīng)用級(jí)系統(tǒng);4. 模塊化處理,方便升級(jí)更新;5.系統(tǒng)客戶端運(yùn)行在windows 平臺(tái)下,服務(wù)端可以在Windows 平臺(tái)

12、或UNIX 平臺(tái)下。系統(tǒng)還應(yīng)該有個(gè)較好的圖形用戶界面。系統(tǒng)應(yīng)該有很好的可擴(kuò)展性。頂層數(shù)據(jù)流程圖,表示系統(tǒng)從客戶那里接受訂購(gòu)要求,把貨發(fā)給顧客。當(dāng)貨存不足時(shí),企業(yè)便向供貨商發(fā)出訂貨要求,以滿足銷售的需要。但是該圖沒(méi)有反映數(shù)據(jù)的具體流向,只是高度概括地反映了企業(yè)的業(yè)務(wù),需要做進(jìn)一步擴(kuò)展。頂層數(shù)據(jù)流程圖如圖3-3所示: 如圖3-4所示是擴(kuò)展后的第二層數(shù)據(jù)流程圖。主要外部項(xiàng)有兩個(gè):客戶和供應(yīng)商。當(dāng)顧客的訂貨要求被接受以后,就要按照顧客所購(gòu)商品以及需要的數(shù)量查找?guī)齑媪?,確定是否能夠滿足顧客的訂貨要求。如果能夠完全滿足,就給庫(kù)存部門發(fā)銷售出庫(kù)信息,給客戶發(fā)貨,并修改相應(yīng)的商品庫(kù)存量。如果只能滿足一部分或完

13、全不能滿足顧客要求,就把不能滿足的商品記錄下來(lái),并通知生產(chǎn)部門進(jìn)行生產(chǎn)。如果原料不足則向供應(yīng)商發(fā)出采購(gòu)請(qǐng)求,供應(yīng)商接到訂貨要求,把原料發(fā)過(guò)來(lái),庫(kù)存部門進(jìn)行入庫(kù),修改庫(kù)存量,并進(jìn)行付款。 根據(jù)以上對(duì)系統(tǒng)功能的需求分析,進(jìn)銷存管理系統(tǒng)的模塊可包含以下功能: 采購(gòu)管理模塊:進(jìn)行商品采購(gòu)入庫(kù),商品采購(gòu)?fù)素?,進(jìn)/退單據(jù)錄入,歷史采購(gòu)查詢,原料采購(gòu)查詢,業(yè)務(wù)員采購(gòu)查詢,采購(gòu)單完成情況銷售管理模塊:進(jìn)行成品銷售,銷售單據(jù)和當(dāng)前庫(kù)存查詢,與客戶的往來(lái)帳務(wù),庫(kù)存查詢及訂單審核,產(chǎn)生缺貨數(shù)量庫(kù)存管理模塊:進(jìn)行入庫(kù)劃碼,出庫(kù)劃碼,出/入庫(kù)單據(jù)錄入,劃碼單查詢,出入庫(kù)統(tǒng)計(jì),實(shí)時(shí)庫(kù)存數(shù)量查詢基本信息設(shè)置:商品信息, 供

14、貨商, 客戶, 員工, 倉(cāng)庫(kù)等基本參數(shù)的設(shè)置及信息的添加。3.2.3 E-R圖 圖2-3 系統(tǒng)結(jié)構(gòu)圖3.4 各功能模塊分析3.4.1 采購(gòu)管理新增采購(gòu)訂單、采購(gòu)訂單查詢、采購(gòu)單查詢、采購(gòu)?fù)素洝⒉少?gòu)明細(xì)表、貨品采購(gòu)匯總表、供應(yīng)商采購(gòu)匯總表、采購(gòu)訂單完成情況、采購(gòu)覆蓋采購(gòu)的各個(gè)環(huán)節(jié)。企業(yè)通過(guò)虛擬的在線貨品目錄,迅速而實(shí)時(shí)的訪問(wèn)貨品信息;通過(guò)價(jià)格和品質(zhì)的比較,選定產(chǎn)品供應(yīng)商。采購(gòu)包括采購(gòu)訂單、新建采購(gòu)、供應(yīng)商管理和添加供應(yīng)商。采購(gòu)訂單能夠查詢所有采購(gòu)訂單以其查詢特定條件的采購(gòu)訂單。新建采購(gòu)能夠直接創(chuàng)建一條采購(gòu)訂單。供應(yīng)商管理能夠查看、查詢、編輯、添加以及刪除供應(yīng)商信息。添加供應(yīng)商可以添加一個(gè)供應(yīng)商的

15、信息。新增銷售訂單、銷售訂單查詢、新增銷售單、銷售單查詢、銷售退貨、銷售明細(xì)表、貨品銷售匯總表、客戶銷售匯總表、銷售訂單完成情況、銷售覆蓋企業(yè)銷售的各個(gè)環(huán)節(jié)。通過(guò)銷售訂單錄入與變更。根據(jù)貨品報(bào)價(jià)和銷售數(shù)量自動(dòng)開(kāi)出銷售發(fā)票,根據(jù)發(fā)貨單產(chǎn)生結(jié)算憑證和收貨單。銷售包括銷售訂單、新建銷售、客戶管理和添加客戶。銷售訂單能夠查詢所有銷售訂單以其查詢特定條件的銷售訂單。新建銷售能夠直接創(chuàng)建一條銷售訂單??蛻艄芾砟軌虿榭?、查詢、編輯、添加以及刪除客戶信息。添加客戶可以添加一個(gè)客戶的信息。新增入庫(kù)單、新增出庫(kù)單、倉(cāng)庫(kù)調(diào)撥、庫(kù)存盤點(diǎn)、貨品調(diào)價(jià)以及業(yè)務(wù)審核等期末業(yè)務(wù)處理功能,業(yè)務(wù)期末結(jié)算為財(cái)務(wù)期末結(jié)算做了必要的鋪墊

16、作用。庫(kù)存包括庫(kù)存數(shù)據(jù)、采購(gòu)入庫(kù)、銷售出庫(kù)、新建調(diào)劑和配置倉(cāng)庫(kù)。庫(kù)存能夠查詢所有倉(cāng)庫(kù)或者指定某個(gè)倉(cāng)庫(kù)的商品庫(kù)存情況,也可以查詢特定商品的庫(kù)存情況。采購(gòu)入庫(kù)是在采購(gòu)?fù)瓿珊?,把商品登記入?kù)。銷售出庫(kù)是在銷售完成后,把商品登記出庫(kù)。新建調(diào)劑是將商品在不同倉(cāng)庫(kù)之間調(diào)劑。配置倉(cāng)庫(kù)可以初始化倉(cāng)庫(kù)信息以及編輯、更改和刪除倉(cāng)庫(kù)信息。往來(lái)單位資料、貨品資料、員工信息、倉(cāng)庫(kù)資料、計(jì)量單位、賬戶信息、公司信息、用戶可以快速、直觀地查詢所需要的數(shù)據(jù)資料。操作員管理、系統(tǒng)設(shè)置、數(shù)據(jù)初始化系統(tǒng)管理是整個(gè)系統(tǒng)的門戶,在系統(tǒng)的安全性上起到了不可估量的作用。各種信息要求盡量全面詳細(xì),使管理變得更輕松更有效。系統(tǒng)設(shè)置包括系統(tǒng)信息

17、和管理權(quán)限。系統(tǒng)信息用于設(shè)置和顯示系統(tǒng)時(shí)區(qū)、用戶信息等。管理權(quán)限可以管理系統(tǒng)用戶的權(quán)限4、代碼實(shí)現(xiàn)根據(jù)需求實(shí)現(xiàn)代碼,使用平臺(tái)為Java, 編譯器為eclipse ,數(shù)據(jù)庫(kù)為SQL Server 2008,主要負(fù)責(zé)邏輯代碼實(shí)現(xiàn)。部分代碼如下:4.1數(shù)據(jù)庫(kù)連接和對(duì)檢驗(yàn)表查詢的相關(guān)相關(guān)代碼:package zzk.Test1;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;class DaoConnString numberone=new String30;String numbertw

18、o=new String30;String pass=new String30;String Goods_Name=new String30;float price=new float30;int i=0;static int n;public DaoConn(/System.out.println("3"String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"/SQL數(shù)據(jù)庫(kù)引擎 String connectDB="jdbc:sqlserver:/127.0.0.1:1433;D

19、atabaseName=中小型企業(yè)進(jìn)銷存管理系統(tǒng)"/數(shù)據(jù)源注意IP 地址和端口號(hào),數(shù)據(jù)庫(kù)名字!tryClass.forName(JDriver;/加載數(shù)據(jù)庫(kù)引擎,返回給定字符串名的類catch(ClassNotFoundException e/e.printStackTrace(;System.out.println("加載數(shù)據(jù)庫(kù)引擎失敗"System.exit(0;System.out.println("數(shù)據(jù)庫(kù)驅(qū)動(dòng)成功"tryString user="毛建國(guó)"/你自己創(chuàng)建的用戶名字和密碼! String password=

20、"123"Connection con=DriverManager.getConnection(connectDB,user,password;/連接數(shù)據(jù)庫(kù)對(duì)象System.out.println("連接數(shù)據(jù)庫(kù)成功"Statement stmt=con.createStatement(;/創(chuàng)建SQL 命令對(duì)象/創(chuàng)建表switch(ncase 1:/ System.out.println("6"System.out.println("查詢"System.out.println("開(kāi)始讀取數(shù)據(jù)"Re

21、sultSet rs1=stmt.executeQuery("SELECT * FROM 檢驗(yàn) "/返回SQL 語(yǔ)句查詢結(jié)果集(集合/循環(huán)輸出每一條記錄while(rs1.next(/輸出每個(gè)字段numberonei=rs1.getString("檢驗(yàn)單編號(hào)"passi=rs1.getString("合格與否"i+;/ System.out.println(rs1.getString("檢驗(yàn)單編號(hào)"+"t"+rs1.getString("合格與否"System.out.pri

22、ntln("讀取完畢"/關(guān)閉連接stmt.close(;/關(guān)閉命令對(duì)象連接con.close(;/關(guān)閉數(shù)據(jù)庫(kù)連接break;case 2:System.out.println("查詢"System.out.println("開(kāi)始讀取數(shù)據(jù)"ResultSet rs2=stmt.executeQuery("SELECT * FROM 商品 "/返回SQL 語(yǔ)句查詢結(jié)果集(集合/循環(huán)輸出每一條記錄while(rs2.next(/輸出每個(gè)字段numbertwoi=rs2.getString("商品編號(hào)"

23、Goods_Namei=rs2.getString("商品名稱"pricei=rs2.getFloat("成本"i+;System.out.println(rs2.getString("商品編號(hào)"+"t"+rs2.getString("商品名稱"+"t"+rs2.getFloat("成本" System.out.println("讀取完畢"/關(guān)閉連接stmt.close(;/關(guān)閉命令對(duì)象連接con.close(;/關(guān)閉數(shù)據(jù)庫(kù)連接brea

24、k;catch(SQLException ee.printStackTrace(;/System.out.println("數(shù)據(jù)庫(kù)連接錯(cuò)誤"System.exit(0;界面截圖: 4.2數(shù)據(jù)庫(kù)登陸界面相關(guān)相關(guān)代碼:package zzk.Test1;import java.awt.*;import java.awt.event.*;import java.sql.Connection;import javax.swing.*;import javax.swing.event.AncestorListener;public class LoginFrame extends J

25、FrameJFrame jf=new JFrame("登錄系統(tǒng)"JPanel contentPane=new JPanel(;JPanel p1=new JPanel(;JPanel p2=new JPanel(;JPanel p3=new JPanel(;JPanel p4=new JPanel(;JPanel p5=new JPanel(;String username;static String passwd;JLabel name=new JLabel("用戶名:"static JTextField nametext=new JTextField

26、(8;JLabel pwd=new JLabel("密碼:"JPasswordField password=new JPasswordField(8;JButton login=new JButton("登錄"LoginFrame(String ssuper(s;jf.setContentPane(contentPane;jf.setSize(500,400;jf.setBackground(Color.gray;setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE; jf.setResizable(false;jf

27、.setVisible(true;init(;void init(contentPane.setLayout(new GridLayout(7,0;contentPane.add(p1;contentPane.add(p2;contentPane.add(p3;contentPane.add(p4;contentPane.add(p5;JLabel wel=new JLabel("歡迎進(jìn)入企業(yè)進(jìn)銷存管理系統(tǒng)" wel.setFont(new Font("斜體",Font.ITALIC,35; wel.setForeground(Color.blue;JL

28、abel role=new JLabel("用戶登錄:"role.setFont(new Font("斜體",Font.BOLD,15; role.setForeground(Color.black;p1.add(wel;/ 布局p2.setLayout(new GridLayout(1,4;CheckboxGroup cbg=new CheckboxGroup(;p2.add(role;p2.add(new Checkbox("倉(cāng)庫(kù)管理員",cbg,true; / p2.add(new JLabel(;p2.add(new Chec

29、kbox("采購(gòu)管理員",cbg,false; p2.add(new Checkbox("銷售管理員",cbg,false;p3.add(name;p3.add(nametext;p4.add(pwd;p4.add(password;p5.add(login;login.addActionListener(new ButtonListener(;p1.setOpaque(false;p2.setOpaque(false;p3.setOpaque(false;p4.setOpaque(false;p5.setOpaque(false;class Butto

30、nListener implements ActionListenerpublic void actionPerformed(ActionEvent eif(e.getSource(=loginTestFrame tf=new TestFrame(;System.out.println("1"public static void main(String args new LoginFrame("歡迎登陸"界面截圖: 1. 供應(yīng)商表:create table 供應(yīng)商(供應(yīng)商編號(hào) char(20 primary key,供應(yīng)商名稱 char(20 not n

31、ull,供應(yīng)商聯(lián)系人 char(8,地址 char(20,固話 char(18,手機(jī) char(11 not null,Email char(20;供應(yīng)商表截圖: 2. 客戶表:create table 客戶(客戶編號(hào) char(20 primary key,客戶名稱 char(20,客戶聯(lián)系人 char(8,地址 char(20,固話 char(18,手機(jī) char(11 not null,Email char(20;客戶表截圖: 3. 商品表:create table 商品(商品編號(hào) char(20 primary key,商品名稱 char(20,成本 float;商品表截圖: 4. 部

32、門表:create table 部門(部門編號(hào) char(10 primary key,部門名稱 char(10 not null,部門經(jīng)理 char(6,固話 char(20;部門表截圖: 5. 倉(cāng)庫(kù)表:create table 倉(cāng)庫(kù)(倉(cāng)庫(kù)編號(hào) char(10 primary key,倉(cāng)庫(kù)主任 char(10 not null,倉(cāng)庫(kù)地址 char(20,固話 char(20;倉(cāng)庫(kù)表截圖: 6. 職工表:create table 職工(職工編號(hào) char(20 primary key,姓名 char(10 not null,年齡 int not null,職稱 char(10 not null

33、,領(lǐng)導(dǎo)編號(hào) char(20,部門編號(hào) char(10,foreign key (領(lǐng)導(dǎo)編號(hào) references 職工(職工編號(hào),foreign key (部門編號(hào) references 部門(部門編號(hào);職工表截圖: 7. 采購(gòu)表:create table 采購(gòu)(采購(gòu)單號(hào) char(20 primary key,供應(yīng)商編號(hào) char(20,商品編號(hào) char(20,部門編號(hào) char(10,采購(gòu)員編號(hào) char(20,采購(gòu)數(shù)量 int not null,采購(gòu)單價(jià) float not null,采購(gòu)日期 datetime,foreign key (供應(yīng)商編號(hào) references 供應(yīng)商(供應(yīng)商編

34、號(hào), foreign key (商品編號(hào) references 商品(商品編號(hào), foreign key (部門編號(hào) references 部門(部門編號(hào), foreign key (采購(gòu)員編號(hào) references 職工(職工編號(hào) ;采購(gòu)表截圖: 8. 銷售表:create table 銷售(銷售單號(hào) char(20 primary key,客戶編號(hào) char(20,商品編號(hào) char(20,部門編號(hào) char(10,銷售員編號(hào) char(20,銷售數(shù)量 int not null,銷售單價(jià) float not null,銷售日期 datetime,foreign key (客戶編號(hào) refe

35、rences 客戶(客戶編號(hào), foreign key (商品編號(hào) references 商品(商品編號(hào), foreign key (部門編號(hào) references 部門(部門編號(hào), foreign key (銷售員編號(hào) references 職工(職工編號(hào) ;銷售表截圖: 9. 庫(kù)存表:create table 庫(kù)存( 商品編號(hào) char(20, 倉(cāng)庫(kù)編號(hào) char(10, 庫(kù)存數(shù)量 int not null,primary key(商品編號(hào), 倉(cāng)庫(kù)編號(hào) ;庫(kù)存表截圖: 10. 檢驗(yàn)表:create table 檢驗(yàn)(檢驗(yàn)單編號(hào) char(20 primary key, 合格與否 char(

36、8 not null,foreign key (檢驗(yàn)單編號(hào) references 采購(gòu)(采購(gòu)單號(hào) ;檢驗(yàn)表截圖: 11. 退單表:create table 退單(退貨單號(hào) char(20 primary key, 退貨數(shù)量 int not null, 退貨日期 datetime, 退貨原因 char(20,foreign key (退貨單號(hào) references 銷售(銷售單號(hào) ;退單表截圖: 5、最終實(shí)現(xiàn)5.1 觸發(fā)器:【采購(gòu)表】(1)創(chuàng)建采購(gòu)表的插入的觸發(fā)器:create trigger t_purchase on 采購(gòu) for insert asbegindeclare 采購(gòu) char(

37、20select 采購(gòu)=采購(gòu)單號(hào) from inserted if exists (select *from 采購(gòu)where 采購(gòu). 采購(gòu)單號(hào)=采購(gòu) update 部門 set 業(yè)務(wù)記錄次數(shù)=業(yè)務(wù)記錄次數(shù)+1 where 部門編號(hào)='01' end在采購(gòu)表插入元組:insert into 采購(gòu) values('20120031','20090033','20130020','01','20110028',20,20,'2013-07-07 18:00:00' 插入前: 在采購(gòu)表插入元

38、組插入后: (2)創(chuàng)建采購(gòu)表的刪除的觸發(fā)器:create trigger t_purchase_down5 on 采購(gòu) for delete asbeginupdate 部門 set 業(yè)務(wù)記錄次數(shù)=業(yè)務(wù)記錄次數(shù)-1 where 部門編號(hào)='01' end在采購(gòu)表刪除元組:delete from 采購(gòu) where 采購(gòu)單號(hào) ='20120031' 在采購(gòu)表刪除元組后:(3)創(chuàng)建采購(gòu)表的插入的觸發(fā)器create trigger t_store on 采購(gòu) 創(chuàng)建采購(gòu)表的插入的觸發(fā)器 for insert as begindeclare 采購(gòu) char(20,商品編號(hào)

39、char(20select 采購(gòu)=采購(gòu)數(shù)量,商品編號(hào)=商品編號(hào) from insertedupdate 庫(kù)存 set 庫(kù)存數(shù)量=庫(kù)存數(shù)量+采購(gòu) where 商品編號(hào)=商品編號(hào) end在采購(gòu)表插入元組:insert into 采購(gòu) values ('20120031','20090033','20130020','01','20110028',20,20,'2013-07-07 18:00:00'在采購(gòu)表插入元組之后: 【銷售表】(1)創(chuàng)建銷售表的插入的觸發(fā)器:create trigger t_sel

40、l on 銷售 for insert as begindeclare 銷售 char(20select 銷售=銷售單號(hào) from inserted if exists (select *from 銷售where 銷售. 銷售單號(hào)=銷售 update 部門 set 業(yè)務(wù)記錄次數(shù)=業(yè)務(wù)記錄次數(shù)+1 where 部門編號(hào)='02' end在銷售表插入元組:insert into 銷售 values('20100031','0002','20130001','02','20110003',10,20,

41、9;2013-07-07 08:00:00'在銷售表插入元組之后: (2)創(chuàng)建銷售表的刪除的觸發(fā)器:create trigger t_sell_down5 on 銷售 for delete as beginupdate 部門 set 業(yè)務(wù)記錄次數(shù)=業(yè)務(wù)記錄次數(shù)-1 where 部門編號(hào)='02' end在銷售表刪除元組:delete from 銷售 where 銷售單號(hào) ='20100031'在銷售表刪除元組之后: (3)創(chuàng)建銷售表的插入的觸發(fā)器:create trigger t_sell on 銷售 for inserted as begindecla

42、re 銷售 char(20,商品編號(hào) char(20select 銷售=銷售數(shù)量,商品編號(hào)=商品編號(hào) from insertedupdate 庫(kù)存 set 庫(kù)存數(shù)量=庫(kù)存數(shù)量-銷售 where 商品編號(hào)=商品編號(hào) end在銷售表插入元組: insert into 銷售 values('20100031','0002','20130001','02','20110003',10,20,'2013-07-07 08:00:00'在銷售表插入元組之后: 5.2 視圖:(1)create view Good

43、s1(商品名稱, 銷售單價(jià), 庫(kù)存數(shù)量 asselect 商品名稱, 銷售單價(jià), 庫(kù)存數(shù)量 from 商品, 銷售, 庫(kù)存where 商品. 商品編號(hào)=銷售. 商品編號(hào) and 商品. 商品編號(hào)=庫(kù)存. 商品編號(hào); select *from Goods1; (2)create view Goods2(商品編號(hào), 商品名稱, 采購(gòu)單價(jià), 庫(kù)存數(shù)量, 供應(yīng)商編號(hào) asselect 商品. 商品編號(hào), 商品名稱, 采購(gòu)單價(jià), 庫(kù)存數(shù)量, 供應(yīng)商編號(hào) from 商品, 采購(gòu), 庫(kù)存where 商品. 商品編號(hào)=采購(gòu). 商品編號(hào) and 商品. 商品編號(hào)=庫(kù)存. 商品編號(hào); select *from G

44、oods2; (3)create view Suppliers1(供應(yīng)商編號(hào), 供應(yīng)商名稱, 供應(yīng)商聯(lián)系人, 商品名稱, 固話, 手機(jī), 地址 asselect 供應(yīng)商. 供應(yīng)商編號(hào), 供應(yīng)商名稱, 供應(yīng)商聯(lián)系人, 商品名稱, 固話, 手機(jī), 地址 from 采購(gòu), 供應(yīng)商, 商品where 采購(gòu). 供應(yīng)商編號(hào)=供應(yīng)商. 供應(yīng)商編號(hào) and 商品. 商品編號(hào)=采購(gòu). 商品編號(hào);select *from Suppliers1; (4)create view Customer1(客戶名稱, 客戶聯(lián)系人, 固話, 手機(jī), 地址 asselect 客戶名稱, 客戶聯(lián)系人, 固話, 手機(jī), 地址 fro

45、m 客戶; select *from Customer1; (5)create view CusBuy(客戶名稱, 商品名稱, 銷售數(shù)量, 銷售日期 asselect 客戶名稱, 商品名稱, 銷售數(shù)量, 銷售日期 from 客戶, 銷售, 商品where 客戶. 客戶編號(hào)=銷售. 客戶編號(hào) and 商品. 商品編號(hào)=銷售. 商品編號(hào);select *from CusBuy; (6)create view PreIncome(商品編號(hào), 商品名稱, 采購(gòu)單價(jià), 銷售單價(jià), 銷售數(shù)量 asselect 商品. 商品編號(hào), 商品名稱, 采購(gòu)單價(jià), 銷售單價(jià), 銷售數(shù)量 from 采購(gòu), 銷售, 商品

46、where 采購(gòu). 商品編號(hào)=商品. 商品編號(hào) and 商品. 商品編號(hào)=銷售. 商品編號(hào);select *from PreIncome; 5.3 索引:1. 供應(yīng)商表:按供應(yīng)商名稱升序建非聚簇索引;create index 供應(yīng)商 on 供應(yīng)商(供應(yīng)商名稱 asc;原因:在實(shí)際生活中大多數(shù)情況我們是知道供應(yīng)商名稱而不一定能知道供應(yīng)商編號(hào),所以可以針對(duì)供應(yīng)商名稱建立輔助索引方便查詢。2. 客戶表:按客戶名稱升序建非聚簇索引;create index 客戶 on 客戶(客戶名稱 asc;原因:在實(shí)際生活中大多數(shù)情況我們是知道客戶名稱而不一定能知道客戶編號(hào),所以可以針對(duì)客戶名稱建立輔助索引方便查詢。3. 商品表:按商品名稱升序建非聚簇索引;create index 商品 on 商品(商品名稱 asc;原因:在實(shí)際生活中大多數(shù)情況我們是知道商品名稱而不一定能知道商品編號(hào),所以可以針對(duì)商品名稱建立輔助索引方便查詢。4. 部門表:按部門名稱升序建非聚簇索引;create index 部門 on 部門(部門名稱 asc;原因:在實(shí)際生活中大多數(shù)情況我們是知道部門名稱而不一定能知道部門編號(hào),所以可以針對(duì)部門名稱建立輔助索引方便查詢。5. 倉(cāng)庫(kù)表:按倉(cāng)庫(kù)地址升序建非聚簇索引;create

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論