藥店管理系統數據庫報告_第1頁
藥店管理系統數據庫報告_第2頁
藥店管理系統數據庫報告_第3頁
藥店管理系統數據庫報告_第4頁
藥店管理系統數據庫報告_第5頁
已閱讀5頁,還剩24頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

29/29某大學信息工程學院數據庫系統課程設計報告題目:藥店管理系統的設計與開發作者姓名:于瀾、X震專業、班級:軟件121學號:12427012,12427013指導教師:X敏完成日期:2014.6.17目錄23431目錄2263611.需求分析4122431.1引言4134131.2需求分析階段的目標與任務4264331.2.1需求分析階段的目標4130901.2.2需求分析階段的任務4285621.2.3系統分析4127311.3需求分析階段成果6158121.3.1數據流圖6154141.3.2數據字典6117751.3.3系統功能891292.數據庫結構設計8291292.1概念設計824332.1.1分E-R圖建立8199052.1.2全局/整體E-R圖10324432.2邏輯設計10214462.2.1建立關系模式10149653.數據庫物理設計1093834.數據庫實施與測試14236194.1數據庫實施1482024.2數據庫測試15279851.新建查詢窗口15292682.在查詢窗口中鍵入下列SQL語句15145205.功能實現17262075-1登錄界面18208515-2注冊界面18161215-3管理操作模塊19262075-4查詢藥品信息功能21262075-5修改藥品信息功能217409262075-6查詢供貨單功能21262075-7查詢購貨單功能21262075-8查詢供貨單功能21262075-9查詢供購商功能21262075-10查詢供貨商功能21223795-11供貨公司功能22223795-11訂購藥品界面22223795-11訂購成功返回信息22100066.總結22100067.附錄2211710附錄1關系模式說明221.需求分析1.1引言數據庫在零售藥店管理系統中占有極其重要的地位,數據庫結構設計的好壞將直接對應用系統的效率以及實現的效果產生影響。合理的數據庫結構設計可以提高數據存儲的效率,保證數據的完整和一致。合理的數據庫也有利于程序的實現。設計數據庫系統時應首先充分了解用戶的各個方面的需求,包括現有的以及將來可能增加的需求。用戶的需求具體體現在對各種信息的提供、保存、更新和交流,這就要求數據庫結構能充分滿足各種信息的輸出和輸入。1.2需求分析階段的目標與任務1.2.1需求分析階段的目標(1)了解目前小型藥店藥品管理的現狀以及SQLServer2000的功能和特點。(2)通過實地調查的方式了解藥店藥品管理的業務流程,并記錄和處理相關的數據,與用戶的實際要求相符,得到用戶的認可。1.2.2需求分析階段的任務(1)詳細調查藥店藥品管理的業務情況,充分了解原來由人工管理的藥店的工作概況。(2)明確用戶買藥人員和藥店工作人員的各項需求,在此基礎上確定新的藥店藥品管理系統的功能。(3)根據自己的調查分析設計出該藥店藥品管理系統的業務流程圖、各階層的數據流圖和數據字典,并虛心向指導老師請教、征求意見,改正不合理的地方,為以下的工作奠定基礎。1.2.3系統分析通常系統分析包括處理對象、處理功能要求和安全性完整性要求。(1)處理對象藥店藥品管理系統的處理對象主要包括:藥店藥品信息、供貨商信息、藥品購進信息、購貨商信息、藥品出售信息、藥品存儲信息等幾個方面,其具體內容如下(詳細信息查看數據項):①藥店藥品信息(t_drug):藥品編號、藥品名稱、藥品分類、藥品規格、藥品品牌、進藥單價、售藥單價等方面,這樣可以方便的查詢藥品的基本信息,了解藥品盈利情況(單個藥品盈利=售藥單價-進藥單價)、哪種品牌的藥品比較暢銷等。②供貨商商信息(t_gonghuoshang):供貨商名稱、供貨商編號、公司地點、聯系、聯系網址等,便于進藥部門查找藥品產地、聯系藥品推定情況等。③購貨信息(t-dbuy):藥品編號、供貨商編號、處理時間、藥品數量、訂退方式,提高了購藥人員的工作效率能及時的將藥品購進,并能根據藥品質量有選擇性的從制藥商那購進較暢銷的藥品就。④購貨商信息(t_gouhuoshang):購貨商名稱、購貨商編號、公司地點、聯系、聯系網址等,購貨商退藥時及時確認其售藥信息以便進行藥品回退工作。⑤售貨信息(t_dorder):購貨商編號、藥品編號、藥品數量、處理時間、售退方式,節約雙方的時間,提高藥品出售效率。⑥藥品存儲信息(Store_Dray):藥品編號、藥品數量,便于及時查找藥品存放位置,節約售藥和存藥時間。(2)處理功能要求藥品管理系統主要完成幾個功能:①品購進和藥品退定信息查詢;②購貨商信息查詢與統計;③藥品存儲信息查詢與更新;④藥品銷售情況統計和藥品被退情況查詢;⑤藥品剩余數量查詢與缺貨藥品查詢及統計;(3)安全性和完整性要求。安全性先通過視圖機制,不同的用戶只能訪問系統授權的視圖,這樣可提供系統數據一定程度上的安全性,再通過用戶授權機制,欲用戶登陸來識別用戶級別,根據這個級別來分配用戶權限,達到數據更高層次的安全某功能。完整性要求用于描述處理對象中數據項能否為null,以及一些用戶自定義完整性(符合實際要求),詳細完整性要求見于系統的邏輯設計階段。1.3需求分析階段成果1.3.1數據流圖藥品信息表藥品信息表藥品信息表藥品信息表訂退訂單訂退訂單供貨商信息表進貨商信息表售退訂單供貨商信息表進貨商信息表售退訂單訂退詳情不顯示售價不顯示進價售退訂單藥品信息表訂退訂單訂退詳情不顯示售價不顯示進價售退訂單藥品信息表訂退訂單訂退貨售退貨訂退貨售退貨管理管理供貨商供貨商購貨商購貨商身份識別管理員身份識別管理員用戶信息表用戶信息表登錄系統登錄系統用戶用戶圖1.1系統流程圖1.3.2數據字典由于數據流程圖表達不夠準確、具體,只有當數據流程圖中出現的每一個成分都給出定義之后,才能完整、準確的描述一個系統,因此,有必要建立數據字典來對數據流程圖中的各個元素做出詳細的說明。數據字典通常包括數據項、數據結構、數據存儲和處理過程5個部分,其中數據項是數據的最小組成單位,若干個數據項可以組成一個數據結構,數據字典通過對數據項和數據結構的定義來描述數據流、數據存儲的邏輯內容。(1)數據項該系統設計的數據項共有27個,如下表:表1-1藥店藥品管理系統數據項數據項編號數據項名存儲結構別名取值約束DI-1d_Dnochar(5)藥品編號DI-2d_Dnamechar(20)藥品名稱DI-3d_fenleiint(8)藥品分類DI-4d_Dguigechar(10)藥品規格DI-5d_Dpinpaichar(30)藥品品牌DI-6d_Dprice1float進藥單價大于零DI-7d_Dprice2float賣藥單價大于零DI-8d_Gnochar(5)供貨商編號DI-9d_Gnamechar(10)供貨商某DI-10d_Gplacechar(20)購貨商地址DI-11d_Gphonechar(11)供貨商DI-12d_Gemailchar(15)供貨商聯系網址DI-13d_Gpwdvarchar(8)供貨商密碼DI-14d_Gnochar(5)供貨商編號DI-15d_Gnamechar(20)供貨商名稱DI-16d_Gplacechar(20)供貨商公司地點DI-17d_Gphonechar(11)供貨商聯系DI-18d_Gemailchar(15)供貨商聯系網址DI-19d_pwdvarchar(8)供貨商密碼DI-20d_Dshuliangint藥品數量大于零DI-21Supplychar(4)訂退方式訂購、退訂DI-22Dealchar(4)售退方式售出、退回DI-23d_bianhao`int(11)編號DI-24d_danweichar(50)單位DI-25d_leixingmingvarchar(20)分類名DI-26`d_noint(8)管理員號DI-27d_pwdvarchar(8)管理員密碼(2)數據結構該系統設計的數據結構共有7個,具體見下表:表1-2數據結構列表數據結構編號數據結構名含義說明組成DS-1t_trug藥品信息d_Dnod_Dnamed_Dfenleid_Dbrandd_Dprice1d_Dprice2d_DshuliangDS-2t_tgouhuoshang購貨商信息d_Gnod_Gnamed_Gplaced_Gphoned_GemailDS-3t_tgonghuoshang供貨商信息d_Gnod_Gnamed_Gplaced_Gphoned_GemailDS-4t_oback藥品訂退信息d_Gnod_Dnod_Timed_Quantityd_SupplyDS-5Stored藥品存儲信息d_Dnod_DshuliangDS-6t_guanliyuan管理員信息d_nod_pwdDS-7t_fenleibiao分類信息d_bianhaod_leixingmingDS-8t_danweibiao單位信息d_bianhaod_danweiDS-9t_dorder訂購信息d_Gnod_Dnod_Quantityd_Timed_SupplyDS-10t_dbuy購買信息d_Gnod_Dnod_Quantityd_Timed_deal1.3.3系統功能2.數據庫結構設計2.1概念設計2.1.1分E-R圖建立根據以上分析,由第二層數據流圖得到分E-R圖如下:圖2-1藥品存儲E-R圖藥品規格藥品名藥品編號藥品數量藥品規格藥品名藥品編號藥品數量11N存儲N存儲藥品品牌售價藥品編號藥品倉庫進價藥品品牌售價藥品編號藥品倉庫進價圖2-2藥品售退E-R圖處理時間藥品數量聯系處理時間藥品數量聯系N地址M購貨商售退N地址M購貨商售退藥品藥品購貨商名購貨商名售退方式聯系網址售退方式聯系網址購貨商號購貨商號圖2-3訂退分E-R圖聯系藥品數量地址處理時間聯系藥品數量地址處理時間供貨商名N供貨商名NM供貨商訂退藥品M供貨商訂退藥品聯系網址聯系網址訂退方式訂退方式供貨商號供貨商號(注:為了節省篇幅,圖中省去了重復的實體所具有的屬性)2.1.2全局/整體E-R圖圖2-4全局E-R圖MMNN訂退存儲倉庫供貨商藥品MMNN訂退存儲倉庫供貨商藥品M售退M售退NN購貨商購貨商2.2邏輯設計2.2.1建立關系模式表3-1實體、聯系與關系模式表實體/聯系關系模式藥品藥品(藥品編號、藥品名稱、藥品分類、藥品規格、藥品品牌、進藥單價、買藥單價)購貨商購貨商(購貨商編號、購貨商名稱、公司地點、聯系、聯系網址)供貨商供貨商(供貨商編號、供貨商名稱、公司地點、聯系、聯系網址)“訂退”藥品訂退:{藥品編號、供貨商編號、藥品數量、處理時間、訂退方式}“售退”藥品售退:{藥品編號、購貨商編號、藥品數量、處理時間、售退方式}管理員管理員(編號密碼)單位單位(編號單位名)分類分類(編號分類名)“訂購”藥品訂購:{藥品編號、供貨商編號、藥品數量、處理時間}“售貨”藥品售貨:{藥品編號、供貨商編號、藥品數量、處理時間}數據庫物理設計3.1建立索引3.1.1對供貨商名字建立索引:CREATEINDEXMIndexONt_gonghuoshang(d_GnameDESC)3.1.2對進貨藥品編號建立索引:CREATEINDEXLIndexONt_dorder(d_DnoASC)3.1.2對購貨商建立索引:CREATEINDEXPIndexONt_gouhuoshang(d_GnameASC)3.1.2對藥品編號建立索引:CREATEINDEXDIndexONt_drug(d_DnoASC)3.2建立視圖3.2.1創建DM_P視圖createviewDM_Passelectd_Dname藥品名稱,d_Dguige規格,d_Dpinpai品牌,d_Gname供貨商名稱,d_Gplace供貨商地址,d_Gphone聯系,d_Gemail聯系網址fromt_drug,t_gonghuosgang,wheret_drug.d_Dno=t_gonghuosgang.d_Dnowithcheckoption3.2.2創建DM_M視圖createviewDM_Masselectd_Dname,d_Dfenlei,d_Dpinpai,d_Dpinpa,d_Dprice1,d_Dprice2,d_Gname,d_Gplace,d_Gphone,d_Gemailfromt_drug,t_gonghuosgang,t_obackwheret_drug.d_Dno=t_oback.d_Dnoandt_gonghuosgang.d_Gno=t_oback.d_Gnowithcheckoption3.2.3創建PD_M視圖createviewPD_Masselectd_Gname,d_Gphone,d_Gplace,d_Dname,d_Dprice2,d_Quantity,d_Timefromt_drug,t_gouhuosgang,t_bbackwheret_drug.d_Dno=t_bback.d_Dnoandt_gouhuosgang.d_Gno=t_bback.d_Gnowithcheckoption3.3創建觸發器3.3.1OBack_Insert的定義:createtriggerOBack_Insertont_obackafterinsertasupdatet_drugsett_drug.d_Quantity=t_drug.d_Quantity-inserted.d_Quantityfromt_drug,insertedwheret_drug.d_Dno=inserted.d_Dno3.3.2DBuy_Insert的定義:createtriggerDBuy_Insertont_dbuyafterinsertasupdatet_drugsett_drug.d_Quantity=t_drug.d_Quantity-inserted.d_Quantityfromt_drug,insertedwheret_drug.d_Dno=inserted.d_Dno3.3.3BBack_Insert的定義:createtriggerBBack_InsertonBBackafterinsertasupdatet_drugsett_drug.d_Quantity=t_drugd_Quantity+inserted.d_Quantityfromt_drug,insertedwheret_drug.d_Dno=inserted.d_Dno3.4存儲過程定義3.1.2t_drug_Insert的定義createproceduret_drug_Insertd_Dnochar(10),d_Dnamechar(20),d_Dfenleichar(8),d_Dguigechar(30),d_Quantityint(11),d_Dprice2float,d_Dprice2floatasinsertintoDrugvalues(d_Dno,d_Dname,d_Dfenleis,d_Dguige,d_Quantity,d_Dprice2,d_Dprice2);3.4.1t_gouhuoshang_Insert的定義createproceduregouhuoshang_Insertd_Gnochar(10),d_Gnamechar(20),d_Gplacechar(20),d_Gphonechar(11),d_Gemailchar(15)d_pwdvarchar(8)asinsertintot_gouhuoshangvalues(d_Gno,d_Gname,d_Gplace,d_Gphone,d_Gemail,d_pwd);3.4.2gonghuoshang_Insert的定義createproceduregonghuoshang_Insertd_Gnochar(10),d_Gnamechar(20),d_Gplacechar(20),d_Gphonechar(11),d_Gemailchar(15)d_pwdvarchar(8)asinsertintot_gonghuoshangvalues(d_Gno,d_Gname,d_Gplace,d_Gphone,d_Gemail,d_pwd);數據庫實施與測試4.1數據庫實施見附錄14.2數據庫測試4.2.1視圖1.銷售信息查詢圖4.2.1.1銷售信息查詢2.售退信息查詢圖4.2.1.2售退信息查詢3.訂購信息查詢圖4.2.1.3訂購信息查詢訂退信息查詢圖4.2.1.4訂退信息查詢藥品信息查詢圖4.2.1.5藥品信息查詢供貨商信息查詢圖4.2.1.6藥品信息查詢購貨商信息查詢圖4.2.1.6藥品信息查詢4.2.2存儲過程測試1.t_drug_Insert測試代碼:EXECt_drug_Insert'1021','感冒通','1','1','某天方','3','15','1000'測試結果:圖4.2.2.1t_drug_Insert測試2.t_gonghuoshang_Insert測試代碼:EXECgonghuoshang_Insert'00000021','某榮昌制藥','某',,'45325445qq.'測試結果:圖4.2.2.2t_gonghuoshang_Insert測試3.t_gouhuoshang_Insert測試代碼:EXECt_gouhuoshang_Insert'10000021','某海王星辰大藥房','某','1',,'896788qq.','00000000'測試結果:圖4.2.2.3t_gouhuoshang_Insert測試4.2.3觸發器測試1、Insert_OR_Update_Durg1:添加一條銷售單時減少藥品表相應的藥品記錄中的數量測試代碼:INSERTINTO銷售表VALUES('10000002','1001',10)測試結果:執行前圖4.2.3.1Insert_OR_Update_Durg1測試1執行后圖4.2.3.2Insert_OR_Update_Durg1測試22、Insert_OR_Update_Durg2:添加一條退訂單時增加藥品表相應的藥品記錄中的數量測試代碼:INSERTINTO訂退表VALUES('00000001','1001',20)測試結果:執行前圖4.2.3.3Insert_OR_Update_Durg2測試執行后圖4.2.3.4Insert_OR_Update_Durg2測試25.功能實現5-1登錄圖5-1登錄登錄界面編寫人:于瀾5-2注冊5-1注冊注冊界面編寫人:于瀾5-3管理操作模塊圖5-3管理操作模塊此模塊可實現如圖所示功能編寫人:X震5-4查詢藥品信息功能圖5-4查詢藥品信息功能查詢藥品信息及修改編寫人:X震5-5藥品信息修改功能圖5-5藥品信息修改功能藥品信息修改界面編寫人:X震5-6查詢供貨單功能圖5-6查詢供貨單功能查看供貨單界面編寫人:于瀾5-7查詢購貨單功能圖5-7查詢購貨單功能查看本公司購貨單界面編寫人:于瀾5-8查詢購貨商操作圖5-8查詢購貨商操作查詢為本公司購貨的供貨公司界面編寫人:X震5-9查詢購貨商操作圖5-9查詢購貨商操作查詢在本公司購貨的購貨公司信息界面編寫人:X震5-10購貨公司功能圖5-10購貨公司功能購貨公司功能界面編寫人:X震5-11供貨公司功能圖5-11供貨公司功能供貨公司功能界面,用戶可進行上述功能操作編寫人:X震5-12訂購藥品界面圖5-12訂購藥品界面編寫人:X震訂購藥品界面5-13訂購成功后返回信息圖5-13訂購成功后返回信息編寫人:于瀾6.總結此次的設計是一個新的體驗、新的挑戰,在此過程中不但應用了所學知識,而且還不但學習新的知識、工具,已完成設計的需要,在設計的過程中深深地體會到作為一個學習計算機的人,為了實現一段代碼、為了一個設計的實現思想、經常絞盡腦汁來達到設計所要達到的目的,并且在此期間積累了許多寶貴的經驗,這都是我們以后走上工作崗位的巨大財富。經過5天的努力,完成數據庫各階段設計,建立10X基本表、7X視圖、3個存儲過程,2個觸發器,并在SQLserver下建立數據庫完成數據導入、并對相關內容進行測試。這次實習意義重大,通過本次實習將課堂所學的理論知識應用與實踐,為以后的設計提供了有力的支持,也打下良好的基礎。7.附錄附錄1關系模式說明1.創建數據庫createdatabaseDrugStore2.創建基本表2-1藥品表CREATETABLE`t_drug`(`d_Dno`char(10)NOTNULLdefault''MENT'編號',`d_Dname`char(20)NOTNULLMENT'名稱',`d_Dfenlei`int(8)NOTNULLMENT'分類',`d_Dguige`int(10)defaultNULLMENT'規格(**/箱)',`d_Dpinpai`char(30)NOTNULLdefault''MENT'品牌',`d_Dprice1`floatunsignedNOTNULLMENT'進價',`d_Dprice2`floatunsignedNOTNULLMENT'賣價',`d_Dshuliang`int(11)NOTNULLMENT'數量',PRIMARYKEY(`d_Dno`),KEY`d_Dguige`(`d_Dguige`),KEY`d_Dfenlei`(`d_Dfenlei`),CONSTRAINT`t_drug_ibfk_1`FOREIGNKEY(`d_Dguige`)REFERENCES`t_danweibiao`(`d_bianhao`),CONSTRAINT`t_drug_ibfk_2`FOREIGNKEY(`d_Dfenlei`)REFERENCES`t_fenleibiao`(`d_bianhao`))ENGINE=InnoDBDEFAULTCHARSET=gbk2-2購貨商表CREATETABLE`t_gouhuoshang`(`d_Gno`char(10)NOTNULLdefault'',`d_Gname`char(20)NOTNULL,`d_Gplace`char(20)NOTNULL,`d_Gphone`char(11)NOTNULL,`d_Gemail`char(15)NOTNULL,`d_Gpwd`varchar(8)NOTNULL,PRIMARYKEY(`d_Gno`))ENGINE=InnoDBDEFAULTCHARSET=gbk2-3供貨商表CREATETABLE`t_gonghuoshang`(`d_Gno`char(10)NOTNULLdefault'',`d_Gname`char(20)NOTNULL,`d_Gplace`char(20)NOTNULL,`d_Gphone`char(11)NOTNULL,`d_Gemail`char(15)NOTNULL,`d_Gpwd`varchar(8)NOTNULL,PRIMARYKEY(`d_Gno`))ENGINE=InnoDBDEFAULTCHARSET=gbk2-4訂購表CREATETABLE`t_dorder`(`d_Gno`char(10)NOTNULLdefault''MENT'供貨商號',`d_Dno`char(10)NOTNULLdefault''MENT'藥品號',`d_Quantity`int(10)unsignedNOTNULL,`d_Time`timestampNOTNULLdefaultCURRENT_TIMESTAMPonupdateCURRENT_TIMESTAMP,`d_Supply`char(4)NOTNULLdefault'訂購',PRIMARYKEY(`d_Gno`,`d_Dno`),KEY`d_Dno`(`d_Dno`),CONSTRAINT`t_dorder_ibfk_1`FOREIGNKEY(`d_Gno`)REFERENCES`t_gonghuoshang`(`d_Gno`),CONSTRAINT`t_dorder_ibfk_2`FOREIGNKEY(`d_Dno`)REFERENCES`t_drug`(`d_Dno`))ENGINE=InnoDBDEFAULTCHARSET=gbk2-5售貨表CREATETABLE`t_dbuy`(`d_Gno`char(10)NOTNULLdefault''MENT'購貨商號',`d_Dno`char(10)NOTNULLdefault''MENT'藥品號',`d_Quantity`int(10)unsignedNOTNULL,`d_Time`timestampNOTNULLdefaultCURRENT_TIMESTAMPonupdateCURRENT_TIMESTAMP,`d_deal`char(4)NOTNULLdefault'購買',PRIMARYKEY(`d_Gno`,`d_Dno`),KEY`d_Dno`(`d_Dno`),CONSTRAINT`t_dbuy_ibfk_1`FOREIGNKEY(`d_Gno`)REFERENCES`t_gouhuoshang`(`d_Gno`),CONSTRAINT`t_dbuy_ibfk_2`FOREIGNKEY(`d_Dno`)REFERENCES`t_drug`(`d_Dno`))ENGINE=InnoDBDEFAULTCHARSET=gbk2-6訂退表REATETABLE`t_oback`(`d_Gno`char(10)NOTNULLdefault''MENT'供貨商號',`d_Dno`char(10)NOTNULLdefault''MENT'藥品號',`d_Quantity`int(10)unsignedNOTNULL,`d_Time`timestampNOTNULLdefaultCURRENT_TIMESTAMPonupdateCURRE

溫馨提示

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

評論

0/150

提交評論