数据库之医药销售管理系统.docx

上传人:b****4 文档编号:5379795 上传时间:2023-05-08 格式:DOCX 页数:33 大小:397.64KB
下载 相关 举报
数据库之医药销售管理系统.docx_第1页
第1页 / 共33页
数据库之医药销售管理系统.docx_第2页
第2页 / 共33页
数据库之医药销售管理系统.docx_第3页
第3页 / 共33页
数据库之医药销售管理系统.docx_第4页
第4页 / 共33页
数据库之医药销售管理系统.docx_第5页
第5页 / 共33页
数据库之医药销售管理系统.docx_第6页
第6页 / 共33页
数据库之医药销售管理系统.docx_第7页
第7页 / 共33页
数据库之医药销售管理系统.docx_第8页
第8页 / 共33页
数据库之医药销售管理系统.docx_第9页
第9页 / 共33页
数据库之医药销售管理系统.docx_第10页
第10页 / 共33页
数据库之医药销售管理系统.docx_第11页
第11页 / 共33页
数据库之医药销售管理系统.docx_第12页
第12页 / 共33页
数据库之医药销售管理系统.docx_第13页
第13页 / 共33页
数据库之医药销售管理系统.docx_第14页
第14页 / 共33页
数据库之医药销售管理系统.docx_第15页
第15页 / 共33页
数据库之医药销售管理系统.docx_第16页
第16页 / 共33页
数据库之医药销售管理系统.docx_第17页
第17页 / 共33页
数据库之医药销售管理系统.docx_第18页
第18页 / 共33页
数据库之医药销售管理系统.docx_第19页
第19页 / 共33页
数据库之医药销售管理系统.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库之医药销售管理系统.docx

《数据库之医药销售管理系统.docx》由会员分享,可在线阅读,更多相关《数据库之医药销售管理系统.docx(33页珍藏版)》请在冰点文库上搜索。

数据库之医药销售管理系统.docx

数据库之医药销售管理系统

数据库原理课程设计

 

题目医药销售管理系统

学院XXXX

专业XXXXXXXXXXXX

班级XXXXX

学号XXXXXXX

学生姓名XXXXXX

指导教师XXX

编写日期2013.07.11

 

1系统需求分析

1.1系统调查

随着近年来我国医药事业的迅速发展,我国药品企业的经营呈现了多态式,例如大型药品超市、连锁药店、小型药品商店等综合发展。

随着社会经济的发展提高,这些医药企业也在不断地扩大规模,因此传统的医药销售系统已经不能满足医药企业的需求。

通过调查从事医药产品的零售、批发等工作的企业,发现该企业的主要业务包括企业药品销售、出入库管理、企业的财务、人事管理等。

医药管理本身就是一项复杂、琐碎但又需要足够的细心,是考验人的耐心的一项工作。

手工进行企业的日常药品销售,常常会出现很多错误,例如开错单、开空单等不同现象,既费时又费力而且还得不到好的结果,这些问题常常令销售人员头疼,却总是没有好的解决办法。

本系统在设计中考虑和克服了上述问题,实现了企业管理工作的系统化、规范化和自动化。

1.2系统目标与要求

要设计一个性能良好的医药销售管理管理系统,明确用户的应用环境对系统的要求是首要的和基本的要求,使其具有较高的可靠性、安全性和易维护性,以及可移植性。

本系统实现了以下六个的功能:

(1)基础信息管理模块:

包括药品信息、员工信息、客户信息、供应商信息四个子模块。

(2)进货管理模块:

包括入库登记、入库登记查询、入库报表三个子模块。

(3)库房管理模块:

包括库存查询、库存盘点、退货处理、库存报表四个子模块。

(4)销售管理模块:

包括销售登记、销售退货、销售报表查询三个子模块。

(5)财务统计模块:

包括当日统计、当月统计报表两个子模块。

(6)系统维护模块

说明:

根据对现实中医药销售管理业务,将用户分为二类超级管理员(经理)、普通管理员(操作员)。

1.3用户需求

(1)员工需求:

员工需要对医药销售管理,指对药品信息的录入、更新、修改和删除;

员工需要查询药品信息,以了解是否有该药品和库存等信息;

员工需要销售药品,出库记录;

员工需要管理退还药品,入库记录;

员工需要管理现金收支,指对进出帐目的记录统计。

(2)顾客需求:

①顾客需要查询药品信息;

②顾客选购药品。

1.4系统业务流程图

业务流程图的符号说明如图2.2所示:

1、2、3、4、5、

系统中人员实体或单据实物或信息流处理数据存储

图2.2业务流程图图例

2系统逻辑方案

系统分析的主要成果是系统的逻辑模型。

本系统的逻辑模型主要是以系统的数据流图和数据字典为主要描述工具。

即在无纸化网络考试系统管理方式和业务流程进行认真分析和研究的基础上,排除现有组织机构和业务分工所造成的信息障碍。

2.1数据流程图(DFD):

数据流图是组织中信息运动的抽象。

是在调研的基础上,从系统的科学性、管理的合理性、实际运动的可行性角度出发。

将信息处理功能和彼此之间的联系自顶向下,逐层分解,从逻辑上精确地描述系统应具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向(外部实体)等项目。

首先,分析无纸化网络考试管理系统的总体情况,划分系统边界,识别系统的数据来源和去处,确定外部实体,得出系统的顶层数据流程图;

然后划分出几个主要的信息管理功能,并明确各功能之间的联系,绘制出数据流程图。

数据流程图的符号说明如图2.4所示。

外部实体处理数据流数据存储

图2.4

 

客户员工

账目统计

 

出库记录

 

2.2数据字典(简称DD)

绘制DFD,只是对数据处理和彼此之间的联系进行了说明。

为进一步明确数据的详细内容和数据加工过程,应将数据流图中的全部数据流及其组成部分的数据元素,数据存储,数据加工,通过数据字典描述清楚,以便于此后系统设计的进行。

这就需要开发人员编写详细的数据字典,来描述系统开发过程的细节。

下面列出本系统中的数据项、数据流、数据存储、加工处理和数据结构的数据字典。

数据字典可采用图表格式或较紧凑的记录格式描述,本文采用的是图表格式。

数据项的DD表列举如下:

表2.1药品编号的数据字典

数据项

系统名:

医药销售管理系统编号:

I001名称:

药品编码别名:

数据项值:

类型:

字符型长度:

6个字节取值范围:

简述:

每种药品都具有唯一的编号,它是某种药品的唯一标识符,每种药品都有唯一的编号,如“011976”通常用前两位数字表示入库的年份,中间两位表示类别,最后两位表示该药的序号。

如果该类药数超过100种时,可用“0119A0”表示第100种药。

修改记录:

编写

日期

审核

日期

表2.2药品名称

数据项

系统名:

医药销售管理系统编号:

I002名称:

药品名称别名:

数据项值:

类型:

字符型长度:

32个字节取值范围:

简述:

每种药品都具有唯一药品标识。

修改记录:

编写

日期

审核

日期

表2.3密码

数据项

系统名:

医药销售管理系统编号:

I003名称:

售价别名:

数据项值:

类型:

数值型长度:

8个字节取值范围:

简述:

每种药品都要设置一个销售价格。

修改记录:

编写

日期

审核

日期

3系统总体结构设计

3.1软件系统总体结构设计

软件系统总体结构设计的主要任务就是将整个系统合理的划分成各个功能模块,正确处理模块之间与模块内部的联系及它们之间的调用关系和数据联系,定义各模块的内部结构等,本系统的软件总体结构按分解-协调的原则,信息隐蔽抽象的原则,自顶向下的原则,一致性原则,面向用户的原则进行设计。

3.2数据存储的总体设计

按用途分类可把本系统文件分成以下几种:

(1)主文件:

系统中的主文件是最重要的共享文件,主要存放具有固定值属性的数据。

它需要长期保存,并不断更新。

(2)处理文件:

处理文件包含下一次更新文件所需要的全部记录,本系统中的处理文件如新闻登录日志文件、待审核项目信息文件。

3.3系统功能模块设计

通过对系统的数据流图进行分析,进一步进行功能分解,直到分解成含义明确,功能单一的功能模块,从而得到系统的功能模块结构图。

 

 

4数据库详细设计

4.1数据库设计

数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。

作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。

对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。

1)ER图设计

E-R图:

在系统的数据库设计中,先要对系统分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后才能得出系统的关系模式。

可以采用E-R图的方法来进行数据结构分析,E-R设计方法是一种通过E-R图来描述现实世界信息结构的DB设计方法。

E-R图由实体、属性、联系三部分组成。

各分E-R图说明如下:

经理E-R图:

 

供应商E-R图:

 

员工E-R图:

 

药品销售清单E-R图:

 

客户E-R图:

 

药品E-R图:

 

 

整体E-R图:

1n

n

 

医药销售管理中所涉及到的主要实体集及其属性如下:

药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期)

药品分类索引信息(药品类别代号,类别说明)

员工信息(员工号,姓名,用户名,密码,职位,权限)

客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)

供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)

药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码)

2)逻辑结构设计(E-R图向关系模型的转换)

E-R图向关系模型的转化要解决的问题是如何将实体和实体间的联系转换为关系模式,如何确定这些关系横式的属性和码。

对于实体间的联系我们分不同的情况讨论:

(1)若实体间的联系是1:

1,可以在两个实体转换成的两个关系中任意一个关系的属性中加入另一个关系的码。

(2)若实体间联系为1:

n,则在n端实体转换成的关系中加入1端实体转换成的关系码。

(3)若实体间联系为n:

m,则将联系转换为关系,关系的属性为诸个实体的码加上联系具有的属性,而关系的码则为诸实体的码的组合。

由以上三点,可转换为关系模型。

每个关系的码用下划线表示。

药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期)

药品分类索引信息(药品类别代号,类别说明)

员工信息(员工号,姓名,用户名,密码,职位,权限)

客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)

供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)

药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码)

数据库设计

对上述E-R图所需的实体需要的几个关键表的设计如下:

药品信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

MedicineCode

Char

6

PrimaryKey

NotNull

药品编码

MedicineName

Varchar

40

 

NotNull

药品名称

MedKindCode

Char

10

Foreignkey

NotNull

药品类别代码

Price

Money

8

 

 

售价

ListPrice

Money

8

 

 

进价

Number

Int

4

 

 

库存量

FirmCode

Char

10

Foreignkey

 

供应商

Usefulllife

Datetime

8

 

 

有效期至

客户信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

GuestCode

Char

10

PrimaryKey

NotNull

客户编码

GuestName

Varchar

16

NotNull

客户名称

gLink

Varchar

12

联系人

gLinkTell

Varchar

11

联系方式

City

Varchar

8

所在城市

供应商信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

FirmCode

Char

10

PrimaryKey

NotNull

供应商编码

FirmName

Varchar

16

NotNull

供应商名称

Link

Varchar

12

联系人

LinkTell

Varchar

11

联系电话

City

Varchar

10

所在城市

药品销售主表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

SaleNo

int

4

PrimaryKey

NotNull

销售编码

WorkNo

Char

10

Foreignkey

NotNull

销售员编码

SaleDate

DateTime

8

销售日期

Amount

Money

8

总金额

药品销售子表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

SaleNo

int

4

PrimaryKey

NotNull

销售编码

MedicineCode

Char

6

Foreignkey

NotNull

药品编码

MedicineName

Varchar

32

NotNull

药品名称

Price

Money

8

售价

Number

Int

4

数量

Unit

Char

8

单位

Amount

Money

8

金额

药品类别索引信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

MedKindCode

Char

10

PrimaryKey

NotNull

药品类别代码

KindExplanation

Varchar

12

NotNull

类别说明

员工信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

WorkNo

Char

10

PrimaryKey

NotNull

职工号

Name

Varchar

12

姓名

UserRegName

Char

6

NotNull

用户登录名

Password

Char

10

NotNull

用户口令

Position

Char

10

用户身份

Power

Int

4

用户权限

4.2数据库的完整性和安全性

1)数据库的完整性

数据库的完整性是指数据的正确性和相容性。

数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。

本系统中定义了表与表之间的联系有助于实现完整性规则,一般在程序中实现具体的完整性控制。

2)数据库的安全性

数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。

在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。

本系统包括数据库的安全和服务器的安全。

采用管理员表示和鉴定的方法实现数据库的安全,此安全管理措施并不在前台开发工具中实现,而是在后台数据库中实现。

在登录数据库时,系统让管理员户表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,若是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。

服务器的安全也是通过用户在登录服务器时输入合法的用户名和密码来实现的。

这是一种简单可行的方法,实现起来比较方便。

没有采用更加复杂的系统安全管理措施是因为本管理系统一般是应用在校园网中,采用安全管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的安全管理措施就能够保障数据库的安全性。

5数据库操作

(1)建立数据库

createdatabaseMedicalSellManagerSystem/*创建医药销售管理系统*/

go

useMedicalSellManagerSystem

(2)建立各个表,包括各种约束条件

createtableMedID/*创建药品类别索引信息*/

(MedKindeCodechar(10)constraintMI_PRIPRIMARYKEY,

KindExplanationvarchar(12)NOTNULL)

createtableFirmInfor/*创建供应商信息表*/

(FirmCodechar(10)constraintF_PRIMPRIMARYKEY,

FirmNamevarchar(16)NOTNULL,

Linkvarchar(12),

LinkTellvarchar(11),

Cityvarchar(10))

createtableWorkInfor/*创建员工信息表*/

(WorkNochar(10)constraintW_PRIMPRIMARYKEY,

Namevarchar(12),

UserRegNamechar(6)NOTNULL,

Passwordchar(10)NOTNULL,

Positionchar(10),

PowerInt)

createtableMedInfor/*创建药品信息表*/

(MedicineCodechar(6)constraintM_PRIMPRIMARYKEY,

MedicineNamevarchar(40)NOTNULL,

MedKindeCodechar(10)FOREIGNKEYREFERENCESMedID(MedKindeCode),

PriceMoney,

ListPriceMoney,

NumberInt,

FirmCodechar(10)FOREIGNKEYREFERENCESFirmInfor(FirmCode),

UserfulllifeDatetime)

createtableGueInfor/*创建客户信息表*/

(GuestCodechar(10)constraintG_PRIMPRIMARYKEY,

GuestNamevarchar(16)NOTNULl,

GLinkvarchar(12),

GLinkTellvarchar(11),

Cityvarchar(8))

createtablesellMain/*创建医药销售主表*/

(SaleNointconstraintSM_PRIMPRIMARYKEY,

WorkNochar(10)FOREIGNKEYREFERENCESWorkInfor(WorkNo),

SaleDateDateTime,

AmountMoney)

createtablesellChild/*创建医药销售子表*/

(SaleNointconstraintSC_PRIMPRIMARYKEY,

MedicineCodechar(6)FOREIGNKEYREFERENCESMedInfor(MedicineCode),

MedicineNamevarchar(32)NOTNULL,

PriceMoney,

NumberInt,

Uintchar(8),

AmountMoney)

MedID表

InsertintoMedIDvalues('0001','口腔溃疡')

InsertintoMedIDvalues('0002','感冒')

InsertintoMedIDvalues('0003','发烧')

InsertintoMedIDvalues('0004','拉肚子')

InsertintoMedIDvalues('0005','外伤')

FirmInfor表

InsertintoFirmInforvalues('015','yangshengtang','xiaotai','681472','huzhou')

InsertintoFirmInforvalues('014','baozhilin','zhangqing','658421','deqing')

InsertintoFirmInforvalues('051','pinmingdayaofang','oudan','65417','xiangshan')

MedInfor表

InsertintoMedInforvalues('1012','板蓝根','0002',5,3,'100','014','2010-12-5')

InsertintoMedInforvalues('2014','银黄颗粒','0002',12,8.8,'120','014','2012-10-6')

InsertintoMedInforvalues('2015','感冒清热软胶囊','0002',17,12,'150','015','2011-11-1')

InsertintoMedInforvalues('3012','阿斯匹林','0003',15,11,'100','014','2010-12-1')

InsertintoMedInforvalues('4012','诺氟沙星胶囊','0004',15,12,'100','015','2012-9-16')

InsertintoMedInforvalues('5012','创口贴','0005',2,1,'250','014','2015-5-1')

GueInfor表

InsertintoGueInforvalues('015112','zhangsan','xiaozhang','668401','jiaxing')

InsertintoGueInforvalues('065114','lisi','xiaofang','614425','yuyao')

InsertintoGueInforvalues('052114','wangwu','xiaowu','659024','wenzhou')

InsertintoGueInforvalues('043115','zhaoliu','xiaowu','615874','shangyu')

InsertintoGueInforvalues('014221','awu','xiaozhang','651283','linan')

InsertintoGueInforvalues('025471','asha','xiaofang','691472','dongyang')

WorkInfor表

InsertintoWorkInforvalues('075101','ZKL','zkl01','456789','jingli','')

InsertintoWorkInforvalues('075201','ZJM','zjm01','123789','dongshi','')

InsertintoWorkInforvalues('075215','WMX','wmx05','147258','xiaomi','')

InsertintoWorkInforvalues('075120','ZZW','zzm20','123456','buzhang','')

sellMain表

InsertintosellMainvalues('12','075101','2009-1-1',1000)

InsertintosellMainvalues('13','

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2