




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數據庫設計與管理課程設計報告題目:藥店藥品管理信息系統 專 業:信息管理與信息系統 班 級:110506 姓 名:吳嬌 學 號:20111915 指導教師:趙春艷 學 期:2013-2014-1藥店藥品管理信息系統一、概述題目:藥店藥品管理信息系統背景:隨著科學技術的飛速發展,電腦已經基本進入家家戶戶,計算機技術也在社會生產生活各個領域得到了廣泛的運用。與此同時,企業之間的經營正在面臨著日漸激烈的競爭,越來越多的企業開始意識到提高企業管理水平的重要性和實現信息化管理的迫切性。藥品管理是一項瑣碎、復雜而又十分細致的工作。但是小型藥店藥品管理仍是人工管理,在全新的市場競爭環境下,藥店管理和運營效率
2、已經成為藥店成敗得失的關鍵所在。手工方式下的信息處理工作量大,容易出現錯誤,針對這一情況,我用SQL Server 2000設計了藥店藥品管理信息系統,用以提高人們買藥時的效率,減小藥店工作人員的工作量,提高管理水平。任務:它包括藥店藥品的購進管理、藥品的出售管理、藥品的存儲管理等幾大功能模塊,并提供了對各個功能模塊的查詢、更新、統計等功能。該管理系統不僅能夠保證各種核算準確無誤,還可以利用計算機進行有關數據的統計分析。使藥品管理工作系統化、自動化、規范化,從而提高運行效率,加強企業管理。二、需求分析1.藥品購進業務在藥品庫存表中,可根據柜臺銷售藥品的情況對藥品的需求以及庫存信息獲得藥品的需求
3、量。購進藥品后,購藥人員將藥品進行藥物存儲,不同的藥品放入不同的存儲柜中。為此,我在數據庫中保存了藥品信息,包括藥品編號、藥品名稱、藥品類別、生產商、進藥單價、買藥單價,方便查詢藥品的基本信息,了解藥品盈利情況(單個藥品盈利=買藥單價-進藥單價)、哪種品牌的藥品比較暢銷等。2. 藥品的出售管理在藥品出售表中,可以及時了解到藥品銷售情況,并且結合藥品信息表,從而得出每種藥品的利潤。為此,我在數據庫中保存了顧客信息,包括買藥人編號、買藥人姓名、性別、年齡、聯系電話、住址,便于藥品出現問題時及時與當事人聯系。以及銷售信息,具體有藥品編號、買藥人編號、處理時間、藥品數量、售出方式。3. 藥品的存儲管理
4、在藥品庫存表中,可以及時了解到藥品的剩余庫存,當發現庫存不夠時,可以及時的向供應商請求供貨。為此,我在數據庫中保存了柜臺信息,包括柜臺名稱、柜臺編號, 記錄藥品的擺放位置,方便取藥。以及庫存信息,包括藥品編號、柜臺編號、庫存數量,便于及時查找藥品存放位置,節約售藥和取藥時間。三、數據庫概念結構設計E-R圖圖3-1表3-2 實體、聯系與關系模式表實體/聯系關系模式藥品藥品(藥品編號,藥品名稱,藥品分類,生產商,進藥單價,買藥單價)買藥人買藥人員(買藥人編號,買藥人姓名,性別,年齡,電話,住址)柜臺柜臺(柜臺編號、柜臺名稱)售出售出:藥品編號、買藥人編號、藥品數量、售出時間、售出方式庫存存儲:藥品
5、編號、柜臺編號、庫存數量四、數據庫邏輯結構設計1. 數據庫名稱:DrugSale2. 包含的數據文件名為DrugSale_Data,存儲位置為“D:SQL吳嬌”日志文件名為DrugSale_Log,存儲位置為“D:SQL吳嬌”。3. E-R圖轉為5個表,都符合三范式要求,具體表結構的列表如下表所示: 表4-1 Drug屬性名數據類型說明是否為空主鍵/外鍵取值范圍Dnochar(5)藥品編號否主鍵Dnamechar(20)藥品名稱否Dclasschar(8)藥品分類Dbrandchar(10)生產商Dprice1float進藥單價否大于零Dprice2float售藥單價否大于零表4-2 Pati
6、ent屬性名數據類型說明是否為空主鍵/外鍵取值范圍Pnochar(5)買藥人編號否主鍵Pnamechar(10)買藥人姓名否Pageint年齡1-150Psexchar(2)性別男、女Pphonechar(11)電話否Paddresschar(20)住址表4-3 Storage屬性名數據類型說明是否為空主鍵/外鍵取值范圍Lnochar(5)柜臺編號否主鍵Lnamechar(20)柜臺名稱否表4-4 DBuy屬性名數據類型說明是否為空主鍵/外鍵取值范圍Pnochar(5)買藥人編號否外鍵主鍵Dnochar(5)藥品編號否外鍵Time_SDsmalldatetime售出時間Quantityint銷
7、售數量否大于零DealChar(4)售出方式否售出表4-5 Stored屬性名數據類型說明是否為空主鍵/外鍵取值范圍Dnochar(5)藥品編號否外鍵主鍵Lnochar(5)柜臺編號否外鍵LeftQuantityint庫存數量否不小于零五、數據庫物理實現1.數據庫建立(1)創建數據庫DrugSale,如圖5-1所示:圖5-1(2)生成數據文件和日志文件,如圖5-2和5-3所示:圖5-2 圖5-32.數據表建立(1)創建藥品信息表Drug,如圖5-4,數據表設計表窗口圖如5-5,表瀏覽窗口圖如圖5-6所示:圖5-4圖5-5圖5-6(2)創建顧客信息表Patient,如表5-7,數據表設計表窗口圖
8、如5-8,表瀏覽窗口圖如圖5-9所示:圖5-7圖5-8圖5-9(3)創建柜臺表Storage,如圖5-10,數據表設計表窗口圖如5-11,表瀏覽窗口圖如圖5-12:圖5-10圖5-11 圖5-12(4)創建銷售表DBuy ,如圖5-13,數據表設計表窗口圖如5-14,表瀏覽窗口圖如5-15所示:圖5-13圖5-14圖5-15(5)創建庫存表Stored如5-16,數據表設計表窗口圖如5-17,表瀏覽窗口圖如圖5-18所示:圖5-16 圖5-17 圖5-183.數據庫安全完整性實現(1)在創建藥品信息表Drug時,就已經將藥品編號Dno列聲明為主鍵。語句為Dno char(5) primary
9、key not null驗證結果截圖如5-19:圖5-19(2)在創建顧客信息表Patient時,就已經將買藥人編號Pno列聲明為主鍵。語句為Pno char(5) primary key not null驗證結果截圖如5-20:圖5-20(3)在創建柜臺信息表Storage時,就已經將柜臺編號Lno列聲明為主鍵。語句為Lno char(5) primary key not null驗證結果截圖如5-21:圖5-21(4)在創建銷售信息表DBuy時,就已經將柜臺編號Pno,Dno列聲明為主鍵。語句為primary key(Pno,Dno),驗證結果截圖如5-22:圖5-22(5)在創建庫存表S
10、tore時,就已經將柜臺編號Pno,Dno列聲明為主鍵。語句為primary key(Pno,Dno),驗證結果截圖如5-23:圖5-23(6)在創建藥品信息表Drug時,就已經為列Dprice1,Dprice2定義了列級檢查約束,使其值必須大于0。語句為check(Dprice1 > 0),check(Dprice2 > 0)驗證結果截圖如5-24:圖5-24(7)在創建顧客信息表Patient時,為列Psex定義了列級檢查約束,使其輸入值只能是“男”或“女”。語句為check(Psex = '男' or Psex = '女')驗證結果截圖如5-2
11、5:圖5-25同時為列Page定義了列級檢查約束,使其值必須大于1并且小于等于150。語句為check(Page >= 1 and Page <= 150)。驗證結果截圖如5-26:圖5-26(8)在創建銷售表DBuy時,就已經為列Quantity定義了列級檢查約束,使其值必須大于0,同時為列Deal定義了列級檢查約束,使其輸入只能是“售出”。語句為check(Quantity > 0),check(Deal = '售出')驗證結果截圖如5-27:圖5-27(9)在創建庫存表Stored時,就已經為列LeftQuantity定義了列級檢查約束,使其值必須大于0
12、。語句為check(LeftQuantity > 0),驗證結果截圖如5-28:圖5-28(10)為銷售表DBuy建立插入觸發器,使在插入銷售記錄時,能自動更新庫存表的庫存數量LeftQuantity,使庫存數量=庫存數量-銷售數量(LeftQuantity= LeftQuantity- Quantity),操作如圖5-29:圖5-29圖5-30在插入數據前銷售表DBuy的數據如圖5-31:圖5-31插入數據后,銷售表DBuy的數據如圖5-32:圖5-32插入數據前,庫存表Stored的數據如圖5-33: 圖5-33插入數據后,庫存表Stored的數據如圖5-34:圖5-34(庫存表St
13、ored的D002的庫存數量從21變為12)4.數據操作實現(1)建立存儲過程,用于向藥品信息表插入數據,操作如圖5-35:圖5-35插入數據前,藥品信息表Drug的數據如圖5-36:圖5-36插入數據后,藥品信息表Drug的數據如圖5-37:圖5-37(2)建立存儲過程,用于更新顧客信息表,將編號為“P002”的顧客電話改為,操作過程如圖5-38:圖5-38(3)建立存儲過程,用于刪除藥品信息表,將編號為“D009”的藥品刪除操作過程如5-39:圖5-39刪除數據前,藥品信息表中的數據如圖5-40:圖5-40刪除數據后,藥品信息表中的數據如圖5-41:圖5-41(4
14、)建立存儲過程,在銷售表DBuy中查詢編號為D002的藥品的銷售數量操作過程如5-42:圖5-42(5)建立存儲過程,在銷售表DBuy中查詢編號為D005的藥品的利潤,操作過程如5-43:圖5-43(6)建立存儲過程,在庫存表Stored中查詢編號為L01的柜臺的庫存藥品,操作過程5-44:圖5-44六、心得體會一周的課程設計一下就過去了,在這次的課程設計中我不僅檢驗了我所學到的知識,也得到了很多啟示。還好在課程設計前我就已經開始為我的數據庫設計,不然的話,一周的時間都不夠用。但也應為提前創建了數據庫和表,我發現我做的和老師要求的有很多不同,比如主鍵、外鍵、檢查約束我就已經在創建表的時候就聲明
15、了,以至于在做數據庫完整性的時候給自己造成了不小的麻煩。老師在動員大會的時候雖然簡單講了該做什么,但是真的到做報告的時候還是遇到了很多問題。在創建數據庫和創建表的時候,還沒遇到什么問題,但是到了數據完整性的時候,完全就不知道該怎么做了,只知道做規則、約束、默認值和觸發器,但是到底怎么做卻不知道,只能翻書隨便找了一個很簡單的例子,隨便的套用上去,但是到了周三老師幫我們改報告的時候,經過老師的提醒,才知道,應該要做的東西有很多。比如約束,在創建銷售表DBuy時,我就已經聲明了檢查約束,要求銷售數量始終大于0,售出方式為“售出”。我之前只會聲明檢查約束,卻不知道該怎么來驗證我已經聲明了該聲明,最后老
16、師告訴我們可以故意輸入錯誤的信息,這樣系統就會給出錯誤提示,就可以把該提示信息截圖截下來,同樣的,在為銷售表DBuy建立插入觸發器時,也可以用這種方法來驗證,數據是否插入到該表中。這給我一個啟示,在學習的過程中,我們肯定會犯很多很多的錯誤,但是并不是所有的錯誤都是沒有利用價值的,有些錯誤可以提醒我們,有些錯誤可以給我們指明正確的道路,而有些錯誤,卻可以幫我們驗證自己做的正確的事情。錯誤并不可怕,可怕的是自己不敢行動,不敢付諸實踐,不敢努力,在發現錯誤并且改正的錯誤的過程中,提升自己的能力。除此之外,在數據操作的實現中,我第一遍做的增、刪、改、查全都是很簡單的做法,沒有用的存儲過程,因為我覺得這樣做也是增、刪、改、查,用存儲過程做也是增、刪、改、查,那我就偷懶做簡單的吧,可是最后老師卻說一定要用存儲過程中,開始我還不理解,但是后來一句話點醒了我,我們做的數據庫是給客戶用的,一定要充分考慮到客戶是否方便操作,所有的功能一定要以客戶為中心,而我為了圖方便,圖簡單做的增、刪、改、查只是方便自己,卻沒有方便顧客,所有就一定要做存儲過程,它是獨立存在于數據表之外的數據庫對象,先創建存儲過程,以后就可以直接多
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年生物制藥細胞治療技術產業政策分析與市場機會研究報告
- 2025年粵港澳大灣區文化產業區域協同發展中的文化產業區域品牌影響力研究
- 日間照料中心管理制度
- 公司服務業質量管理制度
- 智慧漁政運行管理制度
- 廠房外消防設備管理制度
- 員工培訓與發展管理制度
- 房產公司標準化管理制度
- ktv門衛安全管理制度
- 培訓班銷售日常管理制度
- 2025年新高考2卷(新課標Ⅱ卷)英語試卷
- 2024年湖北省初中學業水平考試地理試卷含答案
- 2024年認證行業法律法規及認證基礎知識 CCAA年度確認 試題與答案
- GB/T 2423.65-2024環境試驗第2部分:試驗方法試驗:鹽霧/溫度/濕度/太陽輻射綜合
- 房產證英文翻譯件模板
- 板形與板形控制基礎知識
- 過敏性休克ppt課件
- 熱血傳奇架設及參數設置修改
- 金礦堆浸初步設計
- 打印復印明細清單(報銷用)
- (完整版)空白五線譜(大格子)
評論
0/150
提交評論