小型超市进销存管理系统数据库课程设计.docx
《小型超市进销存管理系统数据库课程设计.docx》由会员分享,可在线阅读,更多相关《小型超市进销存管理系统数据库课程设计.docx(25页珍藏版)》请在冰豆网上搜索。
小型超市进销存管理系统数据库课程设计
数据库课程设计
小型超市进销存管理系统
数据库设计书
1.引言
1.1编写目的
1.2背景
a.待开发软件系统的名称:
基于sql server2005的小型超市进存管理系统
b.本项目的任务提出者:
石河子大学
c.本项目开发者
丛雪、秦艳红
d.本项目用户
小型超市
1.3定义
[列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
]
1.4参考资料
数据库系统概论
SQL Server 实验指导
2.总体设计
2.1需求规定
超市进销存系统必须提供顾客信息、厂家信息、采购信息、销售信息、库存信息和财务信息的基础设计:
提供强大的精确查找和模糊查找信息的功能,可以分不同权限、不同用户对该系统进行操作。
另外,该系统还必须保证数据的安全性、完整性和准确性。
超市进销存管理系统的目标是实现超市信息化管理,减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提升超市综合竞争力。
时间就是金钱,效率就是生命。
超市进销存管理系统能够为超市节省大量人力资源,减少管理费用,从而间接为超市节约成本,提高超市效率。
2.1.1功能规定
在对用户的需求进行分析以后,规定了以下模块来适应用户
功能描述
模块
使用单位
开发者
备注
录入信息
供应商基本信息输入、顾客基本信息输入和管理员基本信息输入等
基本信息输入功能模块
管理员
查询信息
供应商基本信息查询、顾客基本信息查询和管理员基本信息查询等
基本信息查询功能模块
顾客、供应商、管理员
信息更新
供应商基本信息更新、顾客基本信息更新和管理员基本信息更新等
基本信息更新功能模块
管理员
信息修改
基本信息修改功能模块
管理员
2.1.2系统功能
A、处理对象:
主要涉及的数据有:
供应商、产品、顾客、仓库、管理员等。
数据之间的关系为:
供应商
产品,顾客
产品,仓库
产品,管理员
仓库。
B、处理功能要求:
本系统完成供应商、产品、顾客、仓库、管理员等之间的功能联系,使进销存三个环节有机地结合起来,形成一个有效的循环系统。
具体包括以下几点:
1,基本数据的录入与维护(产品信息,供应商信息,顾客信息,仓库信息,管理员信息);2,进货管理;3,销售管理;4,仓库管理(库存量,报损)
C、安全性和完整性要求
尽量与顾客进行交流,尽可能准确地获取顾客的需求信息,逐步确定顾客的实际需求。
2.1.2.1精度
由于采用数据库技术并且用户的应用领域对数据精确度的要求不高,所以这点在系统中表现得比较少,但是用户数据的安全性与正确性是完全保证的,所以对用户的使用没有多大的障碍。
2.1.2.2时间特性要求
本系统的数据库较小,所以程序在响应时间,数据更新处理时间上性能是比较突出的。
而且也正由于数据量相对较少,故在数据传输时间和系统运行时间上表现的较让人满意。
2.1.2.4可靠性
由于系统较小只保留一定程度上的可靠性。
2.1.2.5灵活性
由于系统较小只保留一定程度的灵活性。
2.1.3输入输出要求
2.1.4数据管理能力要求
设计如下面所示的数据和数据结构:
信息输入、查询、更新、修改包括如下:
供应商——供应商号,供应商名,地址,电话
产品——产品号,产品名,规格,单价,生产日期,生产地点
顾客——顾客号,顾客名,地址,电话
仓库——仓库号,管理员号,产品号,存放量
管理员——管理员号,管理员名,地址,电话
发票——发票号,顾客号,产品号,购货日期,折扣,金额
应收账款——顾客号,发票号,应收金额,支付日期,支付金额,当前余额
等等
2.1.5故障处理要求
考虑到软件的范围不大,所以故障处理一般由操作系统完成,系统只要保持与操作系统的借口即可。
只要操作系统没有大的故障程序,一般比较稳定。
考虑到用户对数据的安全性要求,程序可以有独立于操作系统之外的数据备份功能与过程,以及系统崩溃后的数据恢复功能,这点在数据库软件中已经到达了,只要稍微在其上再增加用户所需要的附加功能即可。
2.1.6其他专门要求
该软件是使用2005在系统下完成的,所以只要是兼容的软件或是操作系统,该软件都可以正确地运行,有较好的适应能力与兼容性。
而且应用户的特殊需求软件在完成后的维护阶段可以一个与其他类软件接口,随时满足用户的使用要求。
2.2运行环境
2.2.1设备
:
2G
内存:
512
硬盘空间:
250
2.2.2支持软件
操作系统:
数据库:
2005
2.2.3接口
1.硬件接口:
由于软件较小,除硬盘外,基本没有与外界硬件的联系。
2.软件接口:
在这里主要考虑软件与操作系统的接口,考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口。
2.2.4控制
2.3基本设计概念和图
超市进销存管理系统主要实现从进货、退货、库存到销售的一体化信息管理,涉及到了顾客信息、厂家信息、商品信息等多个实体。
下面简单介绍几个关键的实体图。
(1)基本实体图
图1-1仓库实体图
图1-2供应商实体图
图1-3顾客实体图
图1-4管理员实体图
图1-5产品实体图
(2)局部实体图
该图中省略了各个实体的属性描述。
这些实体的属性分别为:
供应商(供应商号,供应商名,地址,电话)
产品(产品号,产品名,规格,单价,生产日期,生产地点)
顾客(顾客号,顾客名,地址,电话)
仓库(仓库号,管理员号,产品号,存放量)
管理员(管理员号,管理员名,地址,电话)
图1-6供应商产品实体图
图1-7顾客产品实体图
图1-8仓库产品实体图
图1-9管理员仓库实体图
(2)生成初步图,通过合并方法,做到各子系统实体、属性、联系统一;
图1-10小型超市进销存管理系统的分图:
进货系统图
图1-11小型超市进销存管理系统的分图:
销售系统图
图1-12小型超市进销存管理系统的分图:
库存系统图
(3)生成全局图,通过消除冲突等方面。
图1-13小型超市进销存管理系统全局图
●数据组织
(1)将模型转换为关系模型(描述转换的原则、转换的结果)。
将图转换为关系模型实际上就是要将实体型、实体的属性和实体型之间的联系转换为关系模式,这种转换一般遵循如下原则:
一个实体转换为一个关系模式。
实体的属性就是关系的属性,实体的码就是关系的码。
将概念设计中的全局图转换为关系模型如下(关系的主码用下划线标出):
供应商(供应商号,供应商名,地址,电话)
产品(产品号,产品名,规格,单价,生产日期,生产地点)
顾客(顾客号,顾客名,地址,电话)
仓库(仓库号,管理员号,产品号,存放量)
管理员(管理员号,管理员名,地址,电话)
发票(发票号,顾客号,产品号,购货日期,折扣,金额)
应收账款(顾客号,发票号,应收金额,支付日期,支付金额,当前余额)
供应(供应商号,产品号,供应量)
存放(仓库号,产品号,存放量)
管理(管理员号,仓库号)
参照(发票号,产品号)
购买(顾客号,发票号)
支付(顾客号,发票号)
(2)模型优化(分析各关系模式是否存在操作异常现象,如果有,请采用范式理论将其规范,做到3范式)。
对关系模型中的每一个关系模式采用范式理论来规范,各关系模式不存在操作异常现象,且都满足三范式,即:
每一个非主属性既不部分依赖于码也不传递依赖于码。
(3)完成数据库模式定义描述,包括各模式的逻辑结构定义、关系的完整性和安全性等内容。
以表格的形式表现出来。
(4)设计用户子模式—视图设计,完成适合不同用户的子模式设计。
将概念模型转化为全局逻辑模型后,还应该根据局部应用需求,结合具体的特点,利用试图功能设计符合用户需要的用户的子模式。
表3-2用户子模式视图
序号
视图名称
视图定义
作用
备注
001
供应商信息查询
002
顾客信息查询
003
管理员信息查询
004
仓库信息查询
005
管理员信息查询
●数据存取方面
本次设计存取方式、数据存放位置等按照2005系统的默认格式,
表4-1存储过程汇总
编号
存储过程名称
定义
作用
1
p1
在中插入一元组
2
P2
在中插入一元组
3
P3
在中插入一元组
4
P4
查询的基本信息
5
P5_
查询的基本信息
6
P6_
查询的基本信息
7
P7
更新的基本信息
8
P8
更新的基本信息
9
P9
更新的基本信息
数据字典(重点在数据项和数据结构)
表1-1数据项
数据项编号
数据项名
数据项含义
与其它数据项的关系
存储结构
1
产品号
(9)
2
产品名
(50)
3
顾客号
(9)
4
顾客名
(10)
5
供应商号
(9)
6
供应商名
(10)
7
管理员号
(9)
8
管理员名
(10)
9
仓库号
(9)
10
仓库名
(9)
表1-2数据结构:
数据结
构编号
数据结构名
数据结构含义
组成
1
产品基本信息
2
顾客基本信息
3
供应商基本信息
4
管理员基本信息
5
仓库基本信息
6
发票基本信息
7
应收账款
8
供应
9
存放
10
管理
11
参照
12
购买
13
支付
(5)处理逻辑描述,对中的复杂处理需要用判定树或判定表描述处理过程,数据字典建立:
功能模块
重点放在数据更新和查询等方面,建立存储过程,对有参考完整性要求的数据更新,采用触发器实现。
表4-2触发器汇总
编号
触发器名称
定义
作用
001
规范完整性
002
规范完整性
2.5功能需求与系统模块的关系
关系模式说明
表1-1供应商关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
供应商号
(9)
00000~99999
是
否
供应商名
(10)
否
否
地址
(30)
否
否
电话
(15)
否
否
表1-2产品关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
产品号
(9)
00000~99999
是
否
产品名
(50)
否
否
规格
(10)
否
否
单价
否
否
生产日期
(10)
否
否
生产地点
(30)
否
否
表1-3顾客关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
顾客号
(9)
00000~99999
是
否
顾客名
(10)
否
否
地址
(30)
否
否
电话
(15)
否
否
表1-4仓库关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
仓库号
(9)
00000~99999
是
否
管理员号
(9)
否
否
产品号
(9)
否
否
存放量
(10)
否
否
表1-5管理员关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
管理员号
(9)
00000~99999
是
否
管理员名
(10)
否
否
地址
(30)
否
否
电话
(15)
否
否
表1-6发票关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
发票号
(9)
00000~99999
是
否
顾客号
(9)
否
是
产品号
(9)
购货日期
(10)
否
否
折扣
(10)
0~10%
金额
表1-7应收账款关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
顾客号
(6)
00000~99999
是
否
发票号
(20)
否
是
应收金额
(30)
否
否
支付日期
(15)
大于等于应收金额
否
否
支付金额
(15)
否
否
当前余额
(15)
大于等于0
否
否
表1-8供应关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
供应商号
(9)
00000~99999
是
是
产品号
(9)
是
是
供应量
(10)
否
否
表1-9存放关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
仓库号
(9)
00000~99999
是
是
产品号
(9)
是
是
存放量
(10)
否
否
表1-10管理关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
管理员号
(9)
00000~99999
是
是
仓库号
(9)
是
是
表1-11参照关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
产品号
(9)
00000~99999
是
是
发票号
(9)
是
是
表1-12购买关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
顾客号
(9)
00000~99999
是
是
发票号
(9)
是
是
表1-13支付关系模式说明
属性名
数据类型
取值范围
是否为主属性
是否为外键
完整性要求
顾客号
(9)
00000~99999
是
是
发票号
(9)
是
是
2.6人工处理过程
在导入数据时,要人工输入各表数据
2.7尚未解决的问题
我们这个系统由于技术、时间约束。
所以目前只考虑到做导入、信息查询、信息增删改操作、计划管理。
界面设计、平台搭建没有完成
3.接口设计
3.1用户接口
3.2外部接口
运行于
3.3内部接口
4.运行设计
4.1运行模块组合
4.2运行控制
系统运行时根据操作员的角色,确定各模块的操作权限和数据的处理权限。
运行中记录操作员操作日志,记录操作员行为。
4.3运行时间
一般操作的响应时间应在1"2秒内,对软磁盘和打印机的操作,以及数据的导入和导出也应在可接受的时间内完成
5.系统数据结构设计
5.2物理结构设计要点
本设计系统采用的为2005,数据库命名:
数据库是由若干个二维表组成,其各自结构见下表所示。
编号表名称说明
1发票基本信息表
2供应商基本信息表
3购买信息表
4参照信息表
5顾客基本信息表
6管理基本信息表
7管理员基本信息表
8支付信息表
9产品信息表
10存储信息表
11仓库信息表
12应付账款信息表
13供应信息表
14导入日志
各数据表的结构如下:
A、发票基本信息表
表名:
(5)
发票号
(8)
顾客号
(10)
产品号
购货日期
(12)
折扣
(10)
金额
B、供应商基本信息表
表名:
(5)
供应商号
(10)
供应商名
(50)
地址
(15)
电话
C、购买信息表
表名:
(5)
顾客号
(5)
发票号
D、参照信息表
表名:
(10)
产品号
(5)
发票号
E、顾客基本信息表
表名:
(5)
顾客号
(10)
顾客名
(50)
地址
(15)
电话
F、管理基本信息表
表名:
(5)
管理员号
(5)
仓库号
G、管理员基本信息表
表名:
(5)
管理员号
(8)
管理员名
(30)
地址
(12)
电话
H、支付信息表
表名:
(5)
顾客号
(5)
发票号
I、产品信息表
表名:
(5)
产品号
(10)
产品名
(8)
规格
(10)
单价
生产日期
(30)
生产地点
J、存储信息表
表名:
(5)
仓库号
(10)
产品号
(8)
存放量
K、仓库信息表
表名:
(5)
仓库号
(10)
管理员号
(8)
产品号
(15)
存放量
L、应付账款信息表
表名:
(5)
顾客号
(8)
发票号
(10)
应收金额
支付日期
(12)
支付金额
(10)
当前余额
M、供应信息表
表名:
(5)
供应商号
(10)
产品号
(8)
供应量
14导入日志
5.3数据结构与程序的关系
[说明各个数据结构与访问这些数据结构的各个程序之间的对应关系。
]
信息输入
信息查询
信息更新
信息修改
发票基本信息表
供应商基本信息表
购买信息表
参照信息表
顾客基本信息表
管理基本信息表
管理员基本信息表
支付信息表
产品信息表
存储信息表
仓库信息表
应付账款信息表
供应信息表
6.系统出错处理设计
6.1出错信息
本系统在登陆时采用登陆名和数据库的登陆名相同的方式来确保系统的安全性,这样如果是源代码被泄露了那个人也得不到用户名和密码。
这样做了之后,就是将来交给别人用了,我也进不去这个软件,大大的增加看了安全性。
6.2补救措施
A.数据库损坏
为了确保数据安全,服务器可以采用主服务器和备份服务器共同使用的方式来进行,一旦主服务器损坏,由备份服务器立即替换进行工作。
数据库要有相应的备份模块,服务器端有基于数据库系统的备份模块,可以通过磁带机或者光盘机来备份,工作站端要有基于应用程序的备份模块。
B.部分停电、网络断开的处理
系统的关键部门,如数据中心等必须配备较大功率的,常用的部门配备小功率的,以备在停电的时候应急使用。
网络的安全由网路的安全和网络设备的安全来保障。
系统的最终目的是部分常用模块可以单机运行,这项工作留待二期工程完成。
C.权限控制
系统部分采用最高级别的权限控制,采用基于数据库的安全认证,系统自带一个用户管理模块,可以方便的创建用户和授权。
对可以授予部分浏览权的用户
对各个系之间的权限通过对同一个表建立不同的视图来实现。
6.3系统维护设计
维护方面主要为对服务器上的数据库数据进行维护。
可使用的数据库维护功能机制。