供销存管理系统数据库的设计

2015-07-02 21:17毛金玲
科技资讯 2015年7期
关键词:数据库

毛金玲

摘 要:对于供销存管理系统,数据库的整体关系较为复杂,构建表格较多,该系统中有主外键关系的表有10个,此外还有库房管理员表不在此列。这些表之间关系错综,互相支撑功能,有些的功能与实现又颇为类似,基于这样的实际情况,该部分将依据各表在功能用途上的特点,将所有表划分为几大类进行阐释和描述。这样做一方面可以加强各表之间联系的直观性,另一方面也方便用户更清晰的理解系统的构成和实现方式,加强可理解性。

关键词:进销存管理系统 数据库 系统模块

中图分类号:F426.6 文献标识码:A 文章编号:1672-3791(2015)03(a)-0224-02

总体上讲,数据可定制的供销存管理系统大体上分为三大模块,分别是:系统管理模块、库存管理模块、销售管理模块。系统管理模块包含数据绑定、系统角色管理、部分表警戒值更改三个子模块;库存管理模块包含查询指定产品当前库存、查询指定材料当前库存、批准商品出库、批准材料出库、发商品生产请求、购入材料入库处理;销售管理模块包含修改销售人员个人信息、填写订单及订单明细各项和发行订单更新数据库;销售管理模块包含修改销售人员个人信息、填写订单及订单明细各项和发送订单更新数据库。

1 进销存管理系统数据库的设计

对于供销存管理系统,数据库的整体关系较为复杂,构建表格较多,如图1为本系统的数据库E-R图。由图可知,该系统中有主外键关系的表有10个,此外还有库房管理员表不在此列。这些表之间关系错综,互相支撑功能,有些的功能与实现又颇为类似,基于这样的实际情况,该部分将依据各表在功能用途上的特点,将所有表划分为几大类进行阐释和描述。这样做一方面可以加强各表之间联系的直观性,另一方面也方便用户更清晰的理解系统的构成和实现方式,加强可理解性。

1.1 相关角色人员信息表的设计

该系统除系统管理员外还有两大角色,即销售人员和库房管理员,此外还有涉及到的非角色人员则有销售人员信息的管理,如表1所示,销售人员信息表主要包括五个字段,分别是销售人员编号、销售人员姓名、销售人员电话、销售人员地址以及登录账号。其中销售人员编号做为销售人员表的主键存在,唯一确定每一个销售人员,同时也是销售人员的登录账号,其类型为nchar(10),根据实际情况已经可以满足系统的需要;销售人员地址字段用于存储销售人员的个人基本信息,类型选定nvarchar(50),类似的,对于销售人员电话字段,考虑到实际情况也为其选定数据类型nvarchar(50),避免实际操作中出现局限;登录密码字段记录的是用户的登录密码,同样选择了nvarchar(50)类型以满足需要。

与此表类似,库房管理员表只是省去了对其个人信息的存储,而客户表对个人信息的存储更为详尽而取消了登录密码字段,因为销售人员并非系统用户,无需登录密码,其他结构均与销售人员信息表类似。

1.2 销售单与材料出库申请单总单

对于提交的单据,本系统中分为三类,即销售单及其明细单、材料出库单及其明细单、生产通知单,其中销售单和材料出库单使用的都是总单加明细单的存储格式,明细单以主表单的主键为外键,这样做的目的是满足数据库结构的第二范式要求,避免麻烦,在这里仅就销售单和生产通知单进行详细说明。

如表1所示,销售单主要包括四个字段,分别是销售单编号、客户编号、销售员编号以及销售时间。其中销售单编号做为销售单表的主键存在,唯一确定每一个销售单项,其类型为nvarchar(50),在实际操作中,系统制定了一个根据当前本地时间生成编号序列的函数,以此来不重复的生成销售单编号,根据实际情况这样的设计可以更好的满足系统的需要;客户编号字段用于存储此项销售单的订购客户的编号,以客户表编号字段为主键,类型选定nchar(10),销售员编号与之类似,以销售人员表编号字段为主键,数据类型为nchar(10);销售日期字段记录的是销售人员与客户谈定订单的日期,区别于订单提交日期,选择了datetime类型,符合实际情况的需要。

记录销售细节敲定的日期

与此表类似的还有材料出库表,主要用于管理材料出库的请求,其中的进货日期与销售单中的销售日期相类似,表示材料申请的日期;没有客户编号和销售员编号,取而代之的是生产通知单编号和审核状态字段,生产通知单编号字段以生产通知单表中的编号字段为外键,目的是获知当前的材料申请是为了哪一份生产通知单,数据类型为nvarchar(50),审核字段是为了表示此项材料申请是否被库房管理员批准,且方便对相关控件的显示和刷新操作。如表2所示。

1.3 销售单明细和材料出库单明细

前面已经提到,为了满足数据库结构的第二范式要求,销售单和材料出库单均采用主表和明细表相配合的模式,因此,在介绍过销售单和材料出库单后,下面将详细介绍销售单明细和材料出库单明细表的情况。

如表3所示,材料出库单明细主要由五个字段构成,其中的材料出库明细单编号作为主键,唯一标示每一个元组,其序列同样由字母序列加时间序列生成函数生成的序列构成;材料出库单编号以材料出库单表中的编号字段为外键,只是此明细单所属的总单项;材料编号标识明细单所要申请的材料编号,外键于材料表的编号字段,因为以上三种编号均由时间生成函数生成序列,故字段类型均设置为nvarchar(50)类型以满足其长度;所需数量字段注明了此种材料的申请数量,类型为decimal,审核状态则标识当前申请项是否被批准,同时服务于筛选目标,类型为bit。

1.4 库存物品表

库房管理员主要负责管理库房内的物品,库房内主要包括两种物品:产品和材料,因此产品信息表和材料表的构成大体相类似,在这里仅就产品信息表予以说明。

如表4所示,产品信息表主要包括四个属性,分别是:产品编号、产品名称、剩余库存、警戒数量,产品编号作为主键唯一标示每个属性元组,其值同样是由指定字符序列加时间生成函数组成,数据类型为nvarchar(50);产品名显示每种产品的名称,数据类型为nchar(10);剩余库存字段用于记录对应产品当前的库存量,数据类型为decimal;警戒数量由系统管理员设定,记录当前产品库存量的警戒数量,若当前操作有可能造成库存量低于警戒线,则弹出警告予以阻止,数据类型为decimal;

2 结语

除去以上各表以外,该系统的底层数据库中还有一个比较特殊的表:成分表,由于不同产品所需要的材料不管是从种类还是数量上都有不同,所以制定了成分表用以查询不同产品的成分构成。以上所述,即为本系统所有的11个数据库表,按照表的结构和用途分为以上的五大类,支持整个系统的运行。

参考文献:

[1] 朱喜梅.基于SQL Server数据库的性能调优策略与研究[D].哈尔滨:哈尔滨理工大学,2009.

[2] 吴杨,孙蔚.B/S模式下ADO.NET数据库访问技术的设计及应用[J].电子测试,2014(2)

[3] 林钊旭.浅谈企业进销存管理系统的研究与开发[J].计算机光盘软件与应用, 2013(5).

猜你喜欢
数据库
Designer测试大数据预定义均衡配置
MemSQL获3000万美元D轮融
数据库
数据库
数据库
数据库
数据库
数据库
SQL语言在电信业务数据库数据查询中的应用
数据库