




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、藥品進(jìn)銷存管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)一、基本分析1.1數(shù)據(jù)庫環(huán)境說明采用的數(shù)據(jù)庫系統(tǒng):mysql編程工具:MyEclipse8.0數(shù)據(jù)庫建模工具:powerdesigner151.2 基本功能分析本設(shè)計(jì)要實(shí)現(xiàn)的是藥品進(jìn)銷存管理系統(tǒng),在設(shè)計(jì)該系統(tǒng)時,應(yīng)盡可能貼近實(shí)際、便于用戶操作.系統(tǒng)在實(shí)現(xiàn)上應(yīng)該具有如下功能:1.系統(tǒng)要提示用戶必須輸入正確的用戶名和密碼才能進(jìn)入系統(tǒng).2. 其功能模塊圖如下:藥品進(jìn)銷存管理系統(tǒng)系統(tǒng)登錄用戶管理基本信息業(yè)務(wù)管理業(yè)務(wù)查詢系統(tǒng)管理增加用戶用戶維護(hù)藥品情況客戶情況供應(yīng)商情況藥品采購藥品銷售庫存盤點(diǎn)銷售退貨客戶回款基本信息入庫明細(xì)銷售明細(xì)回款信息系統(tǒng)退出數(shù)據(jù)庫備份二 、概念設(shè)計(jì)在需
2、求分析的基礎(chǔ)上,我們對藥品進(jìn)銷存管理系統(tǒng)有了一定的了解。在分析設(shè)計(jì)概念模型時,首先找出模型所需的實(shí)體,然后找到各實(shí)體之間的關(guān)系,畫出ER模型圖。2.1、實(shí)體及其間的關(guān)系設(shè)計(jì)對于藥品進(jìn)銷存系統(tǒng),我們設(shè)計(jì)了藥品,客戶,供貨商,倉庫,操作員四個實(shí)體。結(jié)合實(shí)際情況及對數(shù)據(jù)庫設(shè)計(jì)的方便,各個實(shí)體之間的關(guān)系如下:供貨商和藥品之間應(yīng)該是存在采購關(guān)聯(lián),它們之間為多對多關(guān)系。倉庫,藥品之間存在存儲關(guān)聯(lián),它們之間為多對多關(guān)系。藥品,客戶之間存在銷售關(guān)聯(lián),它們之間為多對多關(guān)系。操作員,倉庫之間存在藥品入庫和出庫關(guān)聯(lián),它們之間為多對多關(guān)系。2.2 E-R模型圖的設(shè)計(jì)根據(jù)較為詳細(xì)的需求分析,我們設(shè)計(jì)出了以下E-R模型圖
3、如下.三 、邏輯設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)的目的是將ER模型向關(guān)系模型轉(zhuǎn)換,注意轉(zhuǎn)換時關(guān)系的主鍵、外鍵的設(shè)置以保持原有的ER模型中實(shí)體與實(shí)體之間的關(guān)系,另外還應(yīng)當(dāng)進(jìn)行規(guī)范化處理以消除數(shù)據(jù)冗余。3.1 ER圖向關(guān)系模型的轉(zhuǎn)化(主鍵標(biāo)志為<pk>)存在冗余的關(guān)系,根我們把它拆分成兩張或更多張表 3.2、ER圖轉(zhuǎn)換成關(guān)系模型所遵循的原則我們把ER圖轉(zhuǎn)換成關(guān)系模型所遵循的原則:1) 每一個實(shí)體類型轉(zhuǎn)換成一個關(guān)系模式。如實(shí)體藥品,客戶,供貨商,倉庫,操作員,都可以轉(zhuǎn)化成對應(yīng)的一個關(guān)系模式。關(guān)系模型的主鍵是ER模型的標(biāo)識符,其他屬性一樣。2) 一個聯(lián)系可轉(zhuǎn)化為一個關(guān)系模式,那么,兩端關(guān)系的標(biāo)識符及該聯(lián)系
4、屬性為關(guān)系的屬性,而關(guān)系的標(biāo)識符為兩端實(shí)體標(biāo)識符的組合。3)我們還涉及到了引用完整性約束,也就是外鍵的約束,外碼的約束貫穿著我們設(shè)計(jì)的始終,它把我們建立的關(guān)系緊密的聯(lián)系在了一起。4) 我們對關(guān)系模式進(jìn)行了消除數(shù)據(jù)冗余的處理。應(yīng)符合第三范式,不允許出現(xiàn)傳遞依賴、冗余、異常等等。在邏輯設(shè)計(jì)中形成了關(guān)系表后需要對關(guān)系作規(guī)范化處理,使每個關(guān)系表至少滿足第三范式的要求。對違反第三范式的關(guān)系我們進(jìn)行了分析并作了相應(yīng)的調(diào)整。對各關(guān)系模式之間的數(shù)據(jù)依賴進(jìn)行了極小化處理,消除了冗余。對違反第三范式的關(guān)系模式進(jìn)行了必要的分解和合并。3.3 表匯總表名功能說明tb_buy_detaile藥品采購明細(xì)表tb_buy_
5、main藥品采購主表tb_client_hkqk 客戶回款情況表tb_client_jbqkb客戶基本情況表tb_gys_jbqkb 供應(yīng)商基本情況表tb_medicine_jbqkb 藥品基本情況表tb_sell_detaile 藥品銷售明細(xì)表tb_sell_detaile_th 藥品銷售退貨表tb_sell_main藥品銷售主表tb_stock 藥品庫存盤點(diǎn)信息表tb_username 操作員信息表各表信息表名tb_buy_detaile列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 rklsh int not nullprimary key入庫流水號碼 rkdjh varchar(20)入
6、庫單據(jù)號 ypbh varchar(20)藥品編號 rksl int入庫數(shù)量 rkdj float入庫單價 rkje float入庫金額 rkrq datetime入庫日期 kcsl int庫存數(shù)量 kcsts char(4)庫存狀態(tài)補(bǔ)充說明表名tb_buy_main 列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 rkdjh varchar(20) not nullprimary key入庫單據(jù)號 pzs int品種數(shù)量 rksl int入庫數(shù)量 rkje float入庫金額 rkrq datetime入庫日期 jbr varbinary(10)經(jīng)辦人 sts varchar(2)庫存狀態(tài) g
7、ysbh varchar(20)供應(yīng)商編號補(bǔ)充說明表名tb_client_hkqk列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 hklshvarchar(20)not nullprimary key回款流水號 xslsh int銷售流水號 khbh varchar(20)客戶編號 hkrq datetime回款日期 qkje decimal(2)欠款金額 skhj decimal(2)實(shí)收金額 ljye decimal(2)累計(jì)余額補(bǔ)充說明表名tb_client_jbqkb列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 khbh varchar(20)not nullprimary key客戶編
8、號 khmc varchar(80)客戶名稱 pym varchar(10)拼音編碼 khdz varchar(80)客戶地址 ssdq varchar(40)所屬地區(qū) yzbm varchar(10)郵政編碼 tel varchar(20)聯(lián)系電話 lxr varchar(10)聯(lián)系人 khyh varchar(40)開戶銀行 khzh varchar(20)開戶賬號補(bǔ)充說明表名tb_gys_jbqkb列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 gysbh varchar(20)not nullprimary key供應(yīng)商編號 gysmc varchar(80)供應(yīng)商名稱 pym varc
9、har(10)拼音編碼 gysdz varchar(80)供應(yīng)商地址 ssdq varchar(40)所屬地區(qū) yzbm varchar(10)郵政編碼 tel varchar(20)聯(lián)系電話 lxr varchar(10)聯(lián)系人 khyh varchar(40)開戶銀行 khzh varchar(20)開戶賬號補(bǔ)充說明表名tb_medicine_jbqkb 列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 ypbh varchar(20)not nullprimary key藥品編號 yptm varchar(20)藥品條碼 ypmc varchar(80)藥品名稱 tym varchar(20
10、)通用名稱 pym varchar(10)拼音碼 dw varchar(4)單位 gg varchar(20)規(guī)格 jx varchar(10)劑型 cd varchar(20)產(chǎn)地 bzsl int包裝數(shù)量 yxq varchar(10)有效期 zlbz varchar(20)質(zhì)量標(biāo)準(zhǔn) jyfs varchar(8)經(jīng)營方式 ph varchar(10)批號 lsjg float零售價格 jhjg float進(jìn)貨價格 pfjg float批發(fā)價格 yplb varchar(20)藥品類名 ylbh varchar(10)醫(yī)療保險編號補(bǔ)充說明表名tb_sell_detaile 列名數(shù)據(jù)類型(精
11、度范圍)空/非空約束條件名稱 xslsh intnot null primary key銷售流水號碼 ypbh varchar(20)藥品編號 xsdjh varchar(20)銷售單據(jù)號 xssl int銷售數(shù)量 xsdj float銷售單價 xsje float銷售金額 xsrq datetime銷售日期 thsts char(10)退貨狀態(tài)補(bǔ)充說明表名tb_sell_detaile_th 列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 xslsh varchar(50) not nullprimary key銷售流水號 ypbh varchar(50)藥品編號 thsl int退庫數(shù)量 t
12、hrq datetime退貨日期 thje float退貨金額 jbr varchar(50)經(jīng)辦人補(bǔ)充說明表名tb_sell_main列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 xsdjh varchar(20) not nullprimary key銷售單據(jù)號 khbh varchar(20)客戶編號 pzs int品種數(shù)量 xszs int銷售總數(shù) xsje float銷售金額 xszk float銷售折扣 ysje float應(yīng)收金額 ssje float實(shí)收金額 wsje float未收金額 xsrq datetime銷售日期 skfs varchar(10)收款方式 jbr va
13、rchar(10)經(jīng)辦人 qssts varchar(2)清算狀態(tài) hkje float回款金額 hkrq datetime回款日期補(bǔ)充說明表名tb_stock 列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 ypbh varchar(50)not nullprimary key藥品編號 rksl int入庫數(shù)量 xssl int銷售數(shù)量 kcsl int庫存數(shù)量 pdsl int盤點(diǎn)數(shù)量 pdrq datetime盤點(diǎn)日期補(bǔ)充說明表名tb_username列名數(shù)據(jù)類型(精度范圍)空/非空約束條件名稱 userid varchar(20) not nullprimary key用戶ID user
14、name varchar(50)用戶名 password varchar(50)密碼 passconf varchar(50)確認(rèn)密碼補(bǔ)充說明四、 物理設(shè)計(jì)4.1 索引設(shè)計(jì)關(guān)系屬性A上的索引是一種數(shù)據(jù)結(jié)構(gòu),它可以提高查找在屬性A上具有某個特定值的元組的效率。索引通常有助于包含有屬性A和常量的查詢,但當(dāng)關(guān)系變化很大時,通過掃描關(guān)系中所有的元組來找出那些匹配給定條件的元組的操作方式代價太高。故我們設(shè)計(jì)索引需要對下兩方面折中選擇。首先,對某個屬性使用索引能極大的提高對該屬性值的檢索效率,使用該屬性時,還可以加快連接。其次,對關(guān)系上某個屬性的索引會使得對關(guān)系的插入、刪除、修改變得復(fù)雜和費(fèi)時。因此經(jīng)過分
15、析本系統(tǒng)的功能和需求可知,本系統(tǒng)的藥品表中的記錄可能相當(dāng)?shù)凝嫶螅一谒幤访Q或編碼的查詢和修改相當(dāng)?shù)念l繁,加之在數(shù)據(jù)庫更新和維護(hù)過程中對供貨商的更新和查詢也比較的頻繁,而且供貨商的數(shù)量也可能比較大,綜合考量后應(yīng)為本系統(tǒng)建立如下3個索引,以達(dá)到操作的便捷和系統(tǒng)功能的優(yōu)化。各表中建立索引的表項(xiàng):create unique index khbh_index on tb_client_jbqkb(khbh);create unique index gysbh_index on tb_gys_jbqkb(gysbh);create unique index ypbh_index on tb_medi
16、cine_jbqkb(ypbh);create unique index userid_index on tb_username(userid);五、安全性設(shè)計(jì)角色與權(quán)限設(shè)立兩種級別用戶Administrator,Superuser.對每種類型的用戶設(shè)置不同的權(quán)限.Administrator:提供對系統(tǒng)的實(shí)際操作功能(適于倉庫管理人員)Superuser:擁有系統(tǒng)的一切權(quán)限(適于總經(jīng)理,系統(tǒng)維護(hù)管理人員)六、用SQL實(shí)現(xiàn)設(shè)計(jì)經(jīng)數(shù)據(jù)庫建模后,由模型導(dǎo)出數(shù)據(jù)庫的SQL語言,將SQL語言導(dǎo)入到MySQL數(shù)據(jù)庫中建立所有的數(shù)據(jù)表。/*=*/* Table: tb_buy_detaile */*=*/c
17、reate table tb_buy_detaile( rklsh int not null auto_increment, rkdjh varchar(20), ypbh varchar(20), rksl int, rkdj float, rkje float, rkrq datetime, kcsl int, kcsts char(4), primary key (rklsh);/*=*/* Table: tb_buy_main */*=*/create table tb_buy_main( rkdjh varchar(20) not null, pzs int, rksl int, r
18、kje float, rkrq datetime, jbr varbinary(10), sts varchar(2), gysbh varchar(20), primary key (rkdjh);/*=*/* Table: tb_client_hkqk */*=*/create table tb_client_hkqk( hklsh varchar(20) not null, xslsh int , khbh varchar(20), hkrq datetime, qkje decimal(2,0), skhj decimal(2,0), ljye decimal(2,0), primar
19、y key (hklsh);/*=*/* Table: tb_client_jbqkb */*=*/create table tb_client_jbqkb( khbh varchar(20) not null, khmc varchar(80), pym varchar(10), khdz varchar(80), ssdq varchar(40), yzbm varchar(10), tel varchar(20), lxr varchar(10), khyh varchar(40), khzh varchar(20), primary key (khbh);/*=*/* Table: t
20、b_gys_jbqkb */*=*/create table tb_gys_jbqkb( gysbh varchar(20) not null, gysmc varchar(80), pym varchar(10), gysdz varchar(80), ssdq varchar(40), yzbm varchar(10), tel varchar(20), lxr varchar(10), khyh varchar(40), khzh varchar(20), primary key (gysbh);/*=*/* Table: tb_medicine_jbqkb */*=*/create t
21、able tb_medicine_jbqkb( ypbh varchar(20) not null, yptm varchar(20), ypmc varchar(80), tym varchar(20), pym varchar(10), dw varchar(4), gg varchar(20), jx varchar(10), cd varchar(20), bzsl int, yxq varchar(10), zlbz varchar(20), jyfs varchar(8), ph varchar(10), lsjg float, jhjg float, pfjg float, yp
22、lb varchar(20), ylbh varchar(10), primary key (ypbh);/*=*/* Table: tb_sell_detaile */*=*/create table tb_sell_detaile( xslsh int not null auto_increment, ypbh varchar(20), xsdjh varchar(20), xssl int, xsdj float, xsje float, xsrq datetime, thsts char(10), primary key (xslsh);/*=*/* Table: tb_sell_detaile_th */*=*/create table tb_sell_detaile_th( xslsh varchar(50) not
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科目一試題及答案解釋
- 裝飾合同增項(xiàng)補(bǔ)充協(xié)議
- 花卉租賃協(xié)議合同協(xié)議
- 在變化中前行紡織品設(shè)計(jì)師考試試題及答案
- 廣告中消費(fèi)者心理變化的探討試題及答案
- 紡織工程師職業(yè)責(zé)任試題及答案
- 鐵路選拔干部試題及答案
- 醫(yī)藥流通企業(yè)供應(yīng)鏈優(yōu)化與成本控制技術(shù)創(chuàng)新動態(tài)與趨勢預(yù)測
- vb筆試題目及答案
- 逆向旅游面試題及答案
- 表型組學(xué)技術(shù)助力作物育種效率提升
- 2025年全民營養(yǎng)周科學(xué)實(shí)現(xiàn)吃動平衡健康中國營養(yǎng)先行課件
- 非標(biāo)自動化設(shè)備設(shè)計(jì)培訓(xùn)
- 行政檢查業(yè)務(wù)培訓(xùn)課件
- 西部計(jì)劃共基試題及答案
- 主題班會少年強(qiáng)則國強(qiáng)紀(jì)念五四青年節(jié)【課件】
- 金融數(shù)學(xué)考試及答案
- 食品運(yùn)輸過程安全管理措施
- 2025年中國紅外光理療儀行業(yè)市場全景評估及發(fā)展戰(zhàn)略規(guī)劃報告
- 保潔態(tài)度類培訓(xùn)
- 2024屆高考專題復(fù)習(xí)北京高考模擬考《論語》試題
評論
0/150
提交評論