信息工程学院软件工程专业
软件工程论文
(2013/2014 学年 第一学期)
学生姓名:
学生班级:
学生学号:
贺洋城
软件工程 111
11427002
2013 年
6 月 13 日
药房药库管理系统数据库设计
说明:因为药品的制成品和药材相差较大,一种或多
种药材才能制成一种药品,不同药材放在不同环境,
不同的病需要不同的药方,同一种药方可能用多个人,
同一种药品进货商不同,同一个进货商提供多种药品,
不同账单付款人,方式不一(便于区别每个账单号,
这里加了流水号)。
表一:药品信息表(DRUG_INFO)
列名
DRUG_ID
DRUG_NAME
DRUG_PY
DRUG_WB
DRUG_UNIT
DRUG_RATIO
DRUG_TUNIT
DRUG_NORMS
DRUG_TYPE
DRUG_CODE
数据类型
CHAR(20)
CHAR(20)
CHAR(10)
CHAR(10)
CHAR(5)
INT
CHAR(5)
CHAR(5)
CHAR(5)
CHAR(20)
DRUG_CLASS
CHAR(10)
DRUG_INPRICE
MONEY
DTUG_OUTPRICE MONEY
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
主键/外键 说明
主键
外键
外键
外键
外键
药品编码
药品名称
英文码
汉语码
单位
换算系数
整量单位
规格
药品类型
条形码
药品类别
药品进价
药品零售价(按
零售单位)
说明:因为进货有可能是一袋药材,所以换算单位。制作生成品药时的单位会发生变化。
表二:单位信息表(UNIT_INFO)
列名
UNIT_ID
UNIT_NAME
UNIT_PY
UNIT_WB
数据类型
CHAR(5)
CHAR(10)
CHAR(5)
CHAR(5)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
表格说明:记录药品单位
主键/外键 说明
主键
单位编号
单位名称
英语码
汉语码
表三:规格表(NORMS_INFO)
数据类型
列名
CHAR(5)
NORMS_ID
NORMS_NAME
CHAR(10)
CHAR(5)
NORMS_PY
NORMS_WB
CHAR(5)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
主键/外键 说明
主键
规格编号
规格名称
英语码
汉语码
表格说明:记录药品规格。
表四:类别表(CLASS_INFO)
列名
CLASS_ID
CLASS_NAME
CLASS_PY
CLASS_WB
数据类型
CHAR(5)
CHAR(10)
CHAR(5)
CHAR(5)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
表格说明:记录药品类别。
主键/外键 说明
主键
类别编号
类别名称
英语码
汉语码
表五:类型表(TYPE_INFO)
列名
TYPE_ID
TYPE_NAME
TYPE_PY
TYPE_WB
数据类型
CHAR(5)
CHAR(10)
CHAR(5)
CHAR(5)
表格说明:记录药品类型
表六:部门表(DEP_INFO)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
主键/外键 说明
主键
类型编号
类型名称
英语码
汉语码
列名
DEP_ID
DEP_NAME
DEP_PY
DEP_WB
数据类型
CHAR(5)
CHAR(10)
CHAR(5)
CHAR(5)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
表格说明:记录医院的各个部门
主键/外键 说明
主键
部门编号
部门名称
英语码
汉语码
表七:职务表(POSITION_INFO)
列名
POSITION_ID
POSITION_NAME
数据类型
CHAR(5)
CHAR(10)
可否为空
NOT NULL
NOT NULL
主键/外键 说明
主键
职务编号
职务名称
POSITION_PY
POSITION_WB
CHAR(5)
CHAR(5)
NOT NULL
NOT NULL
表格说明:记录医院人员的职务
英语码
汉语码
表八:工作人员信息表(PERSON_INFO)
列名
PERSON_ID
PERSON_NAME
PERSON_PWD
PERSON_AUTH
PERSON_POTION CHAR(5)
CHAR(5)
PERSON_DEP
PERSON_TEL
CHAR(11)
数据类型
CHAR(12)
CHAR(10)
CHAR(8)
INT
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
主键/外键 说明
主键
规格编号
外键
外键
外键
规格名称名称
密码
权限
职务
部门
联系方式
表格说明:记录医院工作人员的信息,密码和权限保证不同人员具有不同的
操作权限。
表九:药品供应商信息表(SUPPLY_INFO)
列名
SUPPLY_ID
SUPPLY_NAME
SUPPLY_PY
SUPPLY_WB
数据类型
CHAR(10)
CHAR(20)
CHAR(10)
CHAR(10)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
表格说明:记录药品供应商的信息。
表十:药库信息表(PH_INFO)
列名
PH_ID
PH_NAME
PH_ENVIROMENT
PH_ADD
PH_PY
PH_WB
数据类型 可否为空
CHAR(5) NOT NULL
CHAR
NOT NULL
(20)
CHAR(50
)
CHAR(50
)
CHAR(10
)
CHAR(10
)
NOT NULL
NOT NULL
主键/外键 说明
主键
供应商编号
供应商名称
英语码
汉语码
主键/外键 说明
主键
药库编号
药库名称
药区环境描述
药库所在地址
英语码
汉语码
表格说明:药库信息,因为药品不相同的话,所需要的环境不同,药库有多
重类型。
表十一:药房信息表(HOME_INFO)
列名
HOME_ID
HOME_NAME
HOME_ADD
HOME_ENVIROM
ENT
HOME_PY
HOME_WB
数据类型
CHAR(5)
CHAR(20)
CHAR(50)
CHAR(50)
CHAR(10)
CHAR(10)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
主键/外键 说明
主键
药房编号
药房名称
药房地址
药柜环境描述
英文码
汉语码
表格说明:记录药房的一些基本信息。
可否为空
NOT NULL
表十二:患者信息表(PATIENTS_INFO)
数据类型
列名
CHAR(12)
PATIENTS_ID
INT
PATIENTS_AGE
CHAR(10) NOT NULL
PATIENTS_NAME
PATIENTS_SEX
CHAR(2)
PATIENTS_NATION CHAR(8)
CHAR(8)
PATIENTS_AUTH
PATIENTS_HOS
CHAR(12)
NOT NULL
主键/外键 说明
主键
患者编号
患者年龄
患者姓名
患者性别
患者民族
是否享受医保
患者病史
表格说明:因为药品用到的病人都不相同,建立表,方便对不同患者不同时
期的用药记录。也可以对不同的人采用不同的医疗政策。
表十三:付款方式(PAY_TYPE)(这个表可不要)
列名
PAYTYPE_ID
PAYTYPE_NAME
TANK_PY
TANK_WB
数据类型
CHAR(5)
CHAR(20)
CHAR(10)
CHAR(10)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
付款方式名称名称
汉语码
英语码
主键/外键 说明
主键
付款方式编号
表格说明:(这个表可以不要) 便于记录消费,因为现在消费方式有多重,
付款形式有多重,医疗卡,信用卡,现金等等。
表十四:药库存储:PHASAVE_TAB
列名
PH_ID
AREAR_ID
DRUG_ID
MOUNT
UNIT_ID
LOW_MOUNT
数据类型
CHAR(5)
CHAR(5)
CHAR(20)
INT
CHAR(5)
INT
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
主键/外键 说明
外键
主键
主键
外键
药库编号
药区编号
药品编号
库存量
单位
下限
表格说明:重点强调的是库存下限,当库存量低于下限的时候应该采用必要的
报警措施。
表十五:药房存储:HOMESAVE_TAB
列名
HOME_ID
TANK_ID
DRUG_ID
MOUNT
UNIT_ID
数据类型
CHAR(5)
CHAR(5)
CHAR(20)
INT
CHAR(5)
可否为空
NOT NULL
NOT NULL
NOT NULL
NOT NULL
NOT NULL
表十六:药品入库(IN_PHA)
可否为空
数据类型
列名
CHAR(20)
NOT NULL
WNUM
CHAR(20) NOT NULL
DRUG_ID
NOT NULL
CHAR(10)
SUPPLY_ID
NOT NULL
INT
INMOUNT
CHAR(5)
NOT NULL
UNIT_ID
NOT NULL
IN_TIM,E
DATETIME
NOT NULL
APPROVALPERSON CHAR(12)
OPERATORS
CHAR(12)
NOT NULL
MONEY
UNITPAY
TMOUNT
MONY
PAYJUDGE
PAYTIME
CHAR(4)
DATETIME
主键/外键 说明
外键
主键
主键
外键
药库编号
药区编号
药品编号
库存量
单位
主键/外键 说明
主键
外键
流水编号
药品编号
供应商编号
入库数量
单位
入库时间
批准人
操作人
实进价
小计
是否付款
时间记录
表十七:药品出库(OUT_PHA)
数据类型
列名
可否为空
WNUM
CHAR(20)
NOT NULL
CHAR(20) NOT NULL
DRUG_ID
NOT NULL
INT
OUTMOUNT
UNIT_ID
CHAR(5)
NOT NULL
NOT NULL
DATETIME
OUT_TIM,E
主键/外键 说明
主键
外键
流水编号
药品编号
出库数量
单位
出库时间
APPROVALPERSON CHAR(12)
CHAR(12)
OPERATORS
NOT NULL
NOT NULL
外键
外键
批准人
操作人
表十八:药品拆分表(SPLIT_TAB)
可否为空
数据类型
列名
NOT NULL
CHAR(20)
WNUM
CHAR(20) NOT NULL
DRUG_ID
NOT NULL
INT
PMOUNT
CHAR(5)
NOT NULL
PUNIT_ID
NOT NULL
DATETIME
SPLIT_TIMIE
NOT NULL
INT
AMOUNT
CHAR(5)
NOT NULL
AUNIT_ID
NOT NULL
APPROVALPERSON CHAR(12)
OPERATORS
CHAR(12)
NOT NULL
主键/外键 说明
主键
外键
外键
流水编号
药品编号
拆分前数量
拆分前单位
拆分时间
拆分后的数量
拆分后的单位
批准人
操作人
表格说明:药品进货的时候可能是一箱,但是给病人时,确实盒
装的,一瓶的,或者散装的药品。
表十九:药品进药房(IN_HOME)
可否为空
数据类型
列名
CHAR(20)
WNUM
NOT NULL
CHAR(20) NOT NULL
DRUG_ID
INMOUNT
INT
NOT NULL
NOT NULL
CHAR(5)
UNIT_ID
NOT NULL
IN_TIM,E
DATETIME
APPROVALPERSON CHAR(12)
NOT NULL
NOT NULL
CHAR(12)
OPERATORS
表格说明:药品进药房的记录。
表二十:药品出药房(OUT_HOME)
可否为空
数据类型
列名
CHAR(20)
NOT NULL
WNUM
CHAR(20) NOT NULL
DRUG_ID
NOT NULL
INT
OUTMOUNT
NOT NULL
CHAR(5)
UNIT_ID
NOT NULL
OUT_TIM,E
DATETIME
APPROVALPERSON CHAR(12)
NOT NULL
NOT NULL
CHAR(12)
PATIENTS_ID
主键/外键 说明
主键
外键
外键
外键
流水编号
药品编号
如药房数量
单位
入药房时间
批准人
操作人
主键/外键 说明
主键
外键
外键
外键
流水编号
药品编号
出药房数量
单位
出药房时间
批准人
领药人
NOT NULL
NOT NULL
NOT NULL
NOT NULL
MONEY
MONEY
CHAR(4)
DATETIME
CHAR(12)
UNITPRICE
TMOUNT
PAYJUAGE
PAY_TIME
OPERATORS
表二十一:药品退房表(BACKHOME_TAB)
可否为空
数据类型
列名
CHAR(20)
NOT NULL
WNUM
CHAR(20) NOT NULL
DRUG_ID
INT
NOT NULL
BACKTMOUNT
NOT NULL
CHAR(5)
UNIT_ID
NOT NULL
BACK_TIM,E
DATETIME
APPROVALPERSON CHAR(12)
NOT NULL
NOT NULL
CHAR(12)
PATIENTS_ID
NOT NULL
MONEY
UNITPRICE
TMOUNT
MONEY
NOT NULL
CHAR(4)
PAYJUAGE
NOT NULL
DATETIME
PAY_TIME
OPERATORS
CHAR(12)
NOT NULL
药品单价
小计
是否付款
时间记录
操作人
外键
主键/外键 说明
主键
外键
外键
外键
外键
流水编号
药品编号
药品退还数量
单位
退还时间
批准人
退药人
药品单价
小计
是否退款
退款时间
操作人
表格说明:由于不确定的原因,患者要求退药,此表用于处理这样的问题。
表二十二:药品退库表(BACKPHA_TAB)
列名
可否为空
数据类型
WNUM
CHAR(20)
NOT NULL
DRUG_ID
CHAR(20) NOT NULL
BACKMOUNT
NOT NULL
INT
NOT NULL
UNIT_ID
CHAR(5)
BACK_TIM,E
DATETIME
NOT NULL
NOT NULL
APPROVALPERSON CHAR(12)
NOT NULL
CHAR(12)
HOME_ID
TMOUNT
MONEY
NOT NULL
NOT NULL
CHAR(12)
OPERATORS
主键/外键 说明
主键
外键
外键
外键
外键
流水编号
药品编号
药品退还数量
单位
退还时间
批准人
退还单位
小计
操作人
表二十三:药房报损表(DESTORYHOME_TAB)
可否为空
列名
数据类型
WNUM
NOT NULL
CHAR(20)
CHAR(20) NOT NULL
DRUG_ID
NOT NULL
INT
DESTROYMOUNT
UNIT_ID
CHAR(5)
NOT NULL
NOT NULL
DESTROY_TIM,E
DATETIME
APPROVALPERSON CHAR(12)
NOT NULL
主键/外键 说明
主键
外键
外键
流水编号
药品编号
报损数量
单位
报损时间
申请人