数据库实习医药销售管理系统论文.docx
- 文档编号:7819595
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:63
- 大小:562.52KB
数据库实习医药销售管理系统论文.docx
《数据库实习医药销售管理系统论文.docx》由会员分享,可在线阅读,更多相关《数据库实习医药销售管理系统论文.docx(63页珍藏版)》请在冰豆网上搜索。
数据库实习医药销售管理系统论文
信息工程学院
《数据库课程设计》论文
题目:
医药销售数据库设计
学号:
专业班级:
信管103
姓名:
指导老师:
杨丽丽
完成日期:
2012-7-6
医药销售数据库设计
学生姓名张文萍
(信息工程学院信息管理与信息系统10级3班)
摘要目前中小型药店的营业规模不断的扩大,药品的数量和种类不断增加。
对于许多仍处于人工管理阶段的药店来说,管理也越来越复杂。
如果以药店工作人员的增加来实现药品的管理,虽然能使工作变得方便起来,但是这样带来更大的经济开销,对于中小型药店来说要解决实际问题并不是很合适。
开发药品进销存管理系统可以很大程度上方便管理人员对药品的管理,实现药品管理的高效化和统一化。
为便于管理的方便性和可行性。
根据现阶段的应用需求的开发目标设计药品进销存数据库管理系统。
实现药品采购,库存和销售管理的功能,完成对药品从采购到销售的流水作业的数据管理功能。
关键字:
药品;数据库设计;药品采购入库销
引言
当今社会不断的进步,医药超市以及便民药店等药品销售服务机构已经走入了人们的生活,成为了人们生活必不可少的一部分,在很大程度上方便了人们的生活。
为了在更大程度上满足人们的需求,许多药店的的规模进一步扩大,管理也进一步改善。
逐步的走向 市场销售的成熟化,管理的成熟化。
而方便有效的管理手段已经成为了所有管理部门管理的有力工具,经营和运行整个药店药品进销存工作。
传统的管理手段在今天的高速发展的时代中,已经不再体现人工管理的优势了,繁复和大量的手工记录和计算给管理带来了更多的重复工作,如果能将复杂的各类管理过程封装在一个操作中,执行每个管理步骤时使用相对应的功能,那就能给管理者带来更大的便捷。
数据库设计的目标就是为用户和各种应用系统提供一个信息基础设施和高效的运行环境。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用.作为计算机应用的一部分,使用计算机对物资信息进行管理,具有比手工管理所无法比拟的优点.例如:
检索迅速,查找方便,可靠性高,存储量大等。
这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化,正规化管理的重要条件。
针对典型的进销存管理系统,以医药销售行业的药品进销存业务为载体,设计药品进销存管理系统。
以满足药店管理者对各类档案数据的管理,以现代化的思维模式去经营。
1.需求分析
需求分析阶段就是分析用户的需求,这也是设计数据库的起点。
药品进销存管理系统是中型的药店管理人员方便药店作业的各个流程的工作为目的的。
在设计需求分析这个阶段,主要确定药品进销存的业务流程、数据流程,以及要实现的功能、目标,还要用来判定设计结果是否符合实际和实用,达到最初的设计目标,就是进一步完善药品管理系统的功能,使销售服务更加方便,也能在很大程度上减轻工作者的负担。
药品进销存管理的主要目标就是通过药品销售的整个作业流程管理和控制及对库存数据有效的统计和分析,以保证管理的畅通,使决策人员及早发现问题,采取相应措施,调整管理方式,同时,通过数据的分析,可以或得当前市场信息,也便于管理人员不断的进行管理的优化和提高管理水平。
通过查询资料和分析当前的药店经营状况,明确用户的需求而进行设计。
并完成业务流程图和数据流程图。
进一步创建数据字典,完成数据结构和数据处理功能模块。
业务流图主要是阐述整个药品进销存过程的流水作业过程,包括药品的采购,库存管理和销售。
实现进销存的有机统一结合。
经过进一步的分析,详细的业务流图如图1-1所示。
图1-1药品进销存管理系统业务流图
数据流程图反映的是药店作业过程的数据去向和流向。
通过数据流程图,抽象现实世界的数据到药品进销存的物理模型。
再根据这个物理模型要抽象出信息流,将物理模型转化成逻辑模型,反映信息在系统中的流动、处理和存储情况,在整个过程中,所得到的数据流程图可如下图1-2至图1-6所示,分为顶层数据流图,第一层数据流图,第二层数据流图。
图1-2顶层数据流图
图1-3第一层层数据流图
图1-4第二层层数据流图(采购)
图1-5第二层层数据流图(销售)
图1-6第二层层数据流图(报损管理)
图1-7第二层层数据流图(盘存管理)
2.数据库结构设计
主要包括概念设计和逻辑设计两个部分。
2.1概念设计
将需求分析得到的用户需求抽象为信息结构(概念模型)的过程。
要能充分的反应事物与事物之间的联系,是对现实世界的一个真实模型。
在需求分析阶段得到的应用需求首先抽象为信息世界的结构才能更好的用某一DBMS实现这些需求。
E-R模型是概念模型的有力工具。
逐一设计分E-R图,再将所有的分E-R图综合成系统的总E-R图。
2.1.1分E-R图建立
分E-R图的建立依据于数据流图的建立。
以下可从第二层数据流图分别建立分E-R图。
详见图2-1至2-8。
图2-1分E-R图图2-2分E-R图
图2-3分E-R图图2-4分E-R图
图2-5分E-R图
图2-6分E-R图
图2-7分E-R图
图2-8分E-R图
综合各部分的分E-R图,药品进销存管理系统的总体E-R图的设计如下图2-10所示。
图2-10全局E-R图
2.2逻辑设计
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
根据DBMS产品以及不同系统的限制,设计逻辑结构时一般有以下三个步骤:
首先将概念结构转换为一般的关系,网状,层次模型;将转换来的关系,网状,层次模型向特定DBMS支持下的数据模型转换;最后对数据模型进行优化。
药品管理系统的设计采用关系模型。
E-R图转化为关系模型实际上就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。
一个实体型转换为一个关系模式。
实体的属性就是关系的属性,实体的码就是关系的码。
对于实体型间的联系有以下不同的情况:
(1)一个1:
1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性。
(2)一个1:
n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。
如果转换为一个独立的关系没模式,则与联系向连的各实体的码以及联系本身的属性均转换为关系的属性。
(3)一个m:
n联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系的码的一部分。
2.2.1建立关系模式
药品进销存系统涉及到的关系主要有:
供应厂家和药品为m:
n(多对多)的关系,将它们之间的联系转换为独立的关系模式。
仓库和药品的关系为1:
n(1对多),将其之间的联系与n端实体合并。
职工和仓库的关系为1:
n(一对多)的关系,也将其之间的联系与n端实体合并。
客户和药品之间的联系为m:
n(多对多)的关系,将它们之间的联系转换为独立的关系模式。
具体的转换如下所示,主键或外键已标注:
(主键加粗,外键下划线)
供应商(供应商编号,供应商名称,供应商地址,供应商电话)
药品(药品名称,药品分类,药品剂型,药品单价,药品保质期)
职员(职员编号,职员姓名,职员类别)
仓库(仓库编号,仓库类别,仓库地址)
客户(客户编号,客户姓名,客户性别,客户电话)
采购(采购单编号,供应商编号,药品名称,职员编号,采购量,采购日期)
发货(发货单编号,供应商编号,药品名称,职员编号,发货量,发货日期)
客户订药(订药单编号,客户编号,药品名称,职员编号,订药量,订药日期)
销售(销售单编号,客户编号,药品名称,职员编号,销售量,销售日期)
入库(入库单编号,药品名称,仓库编号,职员编号,入库量,入库日期)
出库(出库单编号,药品名称,仓库编号,职员编号,出库量,出库日期)
报损(报损单编号,药品名称,仓库编号,职员编号,报损量,报损原因)
盘存(盘存单编号,药品名称,仓库编号,职员编号,盘存量)
采购退货(购退货单编号,供应商编号,药品名称,职员编号,退货量,退货原因)
客户退货(户退货单编号,客户编号,药品名称,职员编号,退货量,退货原因)
2.2.2关系模式规范化处理
关系数据库中的关系必须满足一定的规范化要求,对于不同的规范化程度可用范式来衡量。
范式是符合某一种级别的关系模式的集合,是衡量关系模式规范化程度的标准,达到的关系才是规范化的。
一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式的集合。
在本系统中,所有建立的表都符合三范式。
2.2.3用户子模式建立
根据需求分析,研究建立满足不同需求的用户子模式,各个子模式的建立在更大程度上方便数据操作。
用户子模式的定义如表3-1所示。
具体实现过程见附录。
供应商(供应商编号,供应商名称,供应商地址,供应商电话)
药品(药品名称,药品分类,药品剂型,药品单价,药品保质期)
药品销售(药品名称,销售量,销售日期)
仓库报损(仓库编号,药品名称,报损量)
库存(仓库编号,药品名称,盘存量)
编号
名称
作用
V-1
Vi_supplier
查询供应商的信息
V-2
Vi_goods
查询各类药品的信息
V-3
Vi_sale
查询药品销售信息
V-4
Vi_baosun
查询仓库药品报损信息
V-5
Vi_Kucun
查询仓库药品库存信息
表2-1
2.2.4关系模式逻辑结构定义
对每个关系模式要以表格形式描述其具体内容。
关系模式的表格形势将以附录二形式列出。
3.数据库物理设计
主要包括数据库在物理设备上的存储结构与存取方法就是数据库的物理结构,它依赖于选定的数据库管理系统。
为一个给定的逻辑数据模型选取一个最合适的应用环境的物理结构的过程,就是数据库的物理设计。
这一阶段主要的任务是确定数据库的物理结构,并不断的进行优化处理,主要建立索引,触发器,存储过程。
3.1索引
建立索引是加快查询速度的有效手段。
如果访问某一数据项的频率较高时,可为之建立索引。
而系统在存取数据时会自动选择合适的索引作为存取路径,对用户是透明的。
在本系统由于药品和供应厂家的访问频率较大,故为之建立索引。
由于在使用时供应商的信息表,药品信息表,客户信息表访问的次数较多。
故为之建立索引。
建立的索引如下表所示。
表3-1
编号
名称
定义
备注
I-1
In_SupName
见附录
3.2触发器
触发器是用户定义在关系表上的一类由事件驱动的过程。
触发器的定义可以更加便捷的实现数据的操作,增加数据操作的灵活性,对数据有更大的控制能力。
这里只要建立触发器来实现对数据的约束条件。
如进货量,药品入库时保质期的检测等。
主要建立的触发器见表。
编号
触发器名称
定义
作用
T-1
tri_C02
见附录三
限制删除C-02客户的退货记录
T-2
tri_Acc
见附录三
限制某一药品入库量不小于400
T-3
tri_gprice
见附录三
限制更新的药品价格不小于1元,小于元的改为1元
T-4
tri_gshelf
见附录三
保质期到2010年的不允许插入
T-5
tri_buy
见附录三
限制采购量更新量不小于100
表3-2
3.3存储过程
存储过程可以实现数据库操作的增删改功能,在执行时需要调用。
运用想函数一样,也可以有参数的参与。
定义存储过程提供了过程封装的效果,执行只需调用,在更大程度上简化了数据处理过程。
药品的进销存过程部分存储过程如下表所示。
表3-3
编号
存储过程名称
定义
作用
P-1
Goods_shelf
见附录三
查询某一药品保质期
P-3
pro_Gtype
见附录三
查询剂型为普通片的药品
P-4
pro_cback
见附录三
查询某种原因的药品的退货量
P-5
pro_addgoods
见附录三
插入一条药品信息
P-6
pro_delgoods
见附录三
删除一条药品记录
P-7
pro_orderSale
见附录三
按药品销量排序
P-8
pro_updIn
见附录三
更新入库量
4.数据库实施与测试
数据库的物理设计阶段之后就进入了实施阶段,这一阶段要用SQL2008来操作。
具体的数据库,数据表,视图,索引和存储过程等都是这个阶段用SQL语句创建。
4.1数据库实施
4.1.1数据库及数据库对象建立
药店的药品管理所涉及的对象主要包括:
数据库、基本表、视图、索引、触发器以及存储过程。
以实现对数据的操作的简便和有效。
(详细的sql代码见附录三)。
4.1.2数据入库
对各个主要数据表要录入20条以上的记录,方法可用EXCEL批量导入,也可以逐条录入。
4.2数据库测试
主要内容是对建立的数据库及数据库对象进行测试
具体要求:
(1)要设计好测试数据
(2)对测试的结果要以图片形式,同时注意图片的格式
(3)对测试结果进行分析,是否满足设计要求。
(数据操作的验证详见附录,存储过程的验证详见附录四。
)
5.总结
在此次数据库设计中,我有一下心得及体会:
一.在这学期的数据库系统概论学习中,因为对数据库系统的认识不够深刻,以及平时所做的练习都是老师给定的表,自己只是做简单的查询,删除,更新工作,所以给了我一个很大的误区:
数据库系统只是一个很简单的系统,它只会做简单的工作。
在老师说做数据库设计师,我觉得就是一个简单的事情。
但是我错了,在这次实习中我遇到了很多的问题,比如:
对于我的题目《医药销售管理系统》,在对现实的抽象上我遇到了较多的问题,我觉得自己可以做的业务一经老师的指导才知道看似简单的问题其实是那么的复杂。
二.实习时,我深刻的感受到了数据库设计是环环嵌套的,只有做好了需求分析,有了好的数据流图,才会使后期的工作顺利的展开,否则就会在折回来接着做需求分析,所以我们要花大量的时间去做需求分析。
在此次实习中我按时完成了数据库设计的要求。
同时经过实习我知道了做任何事都要事先考虑好所有可能发生的事情,然后做好相应的准备。
6.附录
6.1附录一数据字典
6.1.1数据项
数据项编号
数据项名
数据项含义
与其他数据项关系
类型
Dl-1
Supnumber
供应商编号
varchar(10)
Dl-2
Supname
供应商名称
varchar(30)
Dl-3
Supadress
供应商地址
varchar(30)
Dl-4
Supphone
供应商电话
varchar(20)
Dl-5
Gsname
药品名称
varchar(20)
Dl-6
Gkind
药品分类
varchar(20)
Dl-7
Gtype
药品剂型
varchar(20)
Dl-8
Gprice
药品单价
float
Dl-9
Gshelf
药品保质期
date
Dl-10
Empnumber
职员编号
varchar(10)
Dl-11
Empkind
职员类别
varchar(10)
Dl-12
Empname
职员姓名
varchar(10)
Dl-13
Hounumer
仓库编号
varchar(10)
Dl-14
Houkind
仓库类别
varchar(10)
Dl-15
Houaddr
仓库地址
varchar(20)
Dl-16
Buynumber
采购单编号
varchar(10)
Dl-17
Buydate
采购日期
date
Dl-18
Buyliang
采购量
int
Dl-19
Sendnumber
发货单编号
varchar(10)
Dl-20
Sendliang
发货量
int
Dl-21
Senddate
发货日期
date
Dl-22
Lostnumber
报损单编号
varchar(10)
Dl-23
Lostreas
报损原因
varchar(30)
Dl-24
Lostliang
报损量
int
Dl-25
Swnumber
实物清单编号
varchar(10)
Dl-26
Swliang
实物数量
int
Dl-27
Jcnumber
盘查记录单编号
varchar(10)
Dl-28
Jcliang
记录量
int
Dl-29
Pancnumber
盘存单编号
varchar(10)
Dl-30
Pancliang
盘存实际量
int
Dl-31
Dynumber
订药单编号
varchar(10)
Dl-32
Dydate
订药日期
date
Dl-33
Dyliang
订药数量
int
Dl-34
Salenumber
销售单编号
varchar(10)
Dl-35
Saledate
销售日期
date
Dl-36
Saleliang
销售量
int
Dl-37
Cusnumber
客户编号
varchar(10)
Dl-38
Cusname
客户姓名
varchar(10)
Dl-39
Cussex
客户性别
varchar
(2)
Dl-40
Cusphone
客户电话
varchar(20)
Dl-41
Innumber
药品入库单编号
varchar(10)
Dl-42
Indate
药品入库日期
date
Dl-43
Inliang
药品入库量
int
Dl-44
Outnumber
药品出库单编号
varchar(10)
Dl-45
Outreas
药品出库原因
varchar(30)
Dl-46
Outdate
药品出库时间
date
Dl-47
Outliang
药品出库量
int
Dl-48
CBacknum
客户退货单编号
varchar(10)
Dl-49
Cbackliang
客户退货单量
int
Dl-50
Cbackreas
客户退货原因
varchar(30)
Dl-51
Sbacknum
药店退货单编号
varchar(10)
Dl-52
Sbackliang
药店退货单数量
int
Dl-53
Sbackreas
药店退货原因
varchar(30)
6.1.2数据结构
数据结构编号
数据结
构名称
数据结
构含义
数据结构组成
DS-1
Supplier
供应商
Supnumber,Supname,Supadress,Supphone
DS-2
Customer
客户
Cusnumber,Cusname,Cussex,Cusphone
DS-3
Goods
药品
Gname,Gkind,Gtype,Gprice,Gshelf
DS-4
Hourse
仓库
Hounumber,Houkind,Houaddr
DS-5
Employer
职员
Empnumber,Empname,Empkind
DS-7
Buylist
采购单
Buynumber,Buydate,Buyliang,Gname,
Supnumber,Empnumber
DS-8
Sendlist
发货单
Sendnumber,Sendliang,Senddate,Gname,
Supnumber,Empnumber
DS-9
Lostlist
报损单
Lostnumber,Lostreas,Lostliang,Gname,
Empnumber,Hounumber
DS-10
Swlist
实物清单
Swlistnumber,Swliang,Gname,Empnumber,
Hounumber
DS-11
Jclist
盘查记录单
Jcnumber,Empnumber,Jcliang
DS-12
Panclist
盘存单
Pancnumber,Pancliang,Gname,Hounumber,
Empnumber
DS-13
Dyaolist
订药单
Dynumber,Dydate,Dyliang,Gname,Cusnumber,
Empnumber
DS-14
Salelist
销售单
Salenumber,Saledate,Saleliang,Cusnumber,
Empnumber,Gname
DS-15
Inlist
入库单
Innumber,Indate,Inliang,Gname,Empnumber,
Hounumber
DS-16
Outlist
出库单
Outnumber,Outdate,Outliang,Gname,Empnumber
,Hounumber
DS-17
Cbacklist
客户退货单
CBacknumber,Cbackliang,Cbackreas,Gname,Cusnumber,Empnumber
DS-18
Sbacklist
采购退货单
Sbacknumber,Sbackliang,Sbackreas,Gname,
Empnumber,Supnumber
6.1.3数据流
数据流名称
简述
数据流来源
数据流去向
数据流组成
数据流量
高峰流量
发货单
供应商发出的收货单
供应商
验收货品模块
Sendnumber,Sendliang,Senddate,Gname,Supnumber,Empnumber
15/月
30/月
采购单
采购部发给供应商的采购单
采购部
供应商
Buynumber,Buydate,Buyliang,Gname,Supnumber,Empnumber
15/月
30/月
合格单
采购部发给库管员的进货单
采购部
库管模块
Buynumber,Buydate,Buyliang,Gnumber,Gsname,Empnumber,Kugname
15/月
30/月
不合格单
采购部发给退货部的清单
采购部
退货模块
Buynumber,Buydate,Buyliang,Gnumber,Gsname
15/月
30/月
退货单
退货部发给供应商的退货单
退货部
供应商
Sbacknumber,Sbackliang,Sbackreas,Gname,Empnumber,Supnumber
15/月
30/月
入库单
库管员编制的入库记录
库管员编制
库存记录模块
Innumber,Indate,In
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实习 医药 销售 管理 系统 论文