《小型超市管理系统数据库课程设计.pdf》由会员分享,可在线阅读,更多相关《小型超市管理系统数据库课程设计.pdf(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、山西大学计算机与信息技术学院数据库系统课程设计论文题目:小型超市管理系统数据库设计组长王建亮专业软件工程班级大二授 课 教 师2013/6/19小型超市管理系统学生姓名:王建亮(54),王勇和(60),温辉(63),闫宁(67),许鹏(66)目录第一章 系统概述.错误错误!未定义书签。未定义书签。1112系统开发背景.错错误误!未定义书签。未定义书签。系统开发意义.错错误误!未定义书签。未定义书签。第二章 系统需求分析.错误错误!未定义书签。未定义书签。21 系统功能要求.错错误误!未定义书签。未定义书签。22 系统分析概述.错错误误!未定义书签。未定义书签。221零售前台(POS)管理系统.
2、错错误误!未定义书签。未定义书签。本系统必须具有以下功能:.错错误误!未定义书签。未定义书签。222后台管理系统.错错误误!未定义书签。未定义书签。本系统必须具备以下功能:.错错误误!未定义书签。未定义书签。23系统层次划分.错错误误!未定义书签。未定义书签。24 系统程序流程图.错错误误!未定义书签。未定义书签。系统数据流程图符号解释.错错误误!未定义书签。未定义书签。顶层数据流程图.错错误误!未定义书签。未定义书签。第一层数据流程图.错错误误!未定义书签。未定义书签。第二层数据流程图.错错误误!未定义书签。未定义书签。第三章 系统总体设计.错误错误!未定义书签。未定义书签。31 系统总体设
3、计目标.错错误误!未定义书签。未定义书签。32 系统概念设计.错错误误!未定义书签。未定义书签。321 概念模型(E-R 图).错错误误!未定义书签。未定义书签。322关系模式.错错误误!未定义书签。未定义书签。323 关系模式规范化说明.错错误误!未定义书签。未定义书签。324 系统数据库表结构.错错误误!未定义书签。未定义书签。第四章 数据库实施阶段.错误错误!未定义书签。未定义书签。建立数据库、数据表、视图、索引.错误错误!未定义书签。未定义书签。建立数据库.错错误误!未定义书签。未定义书签。建立数据表.错错误误!未定义书签。未定义书签。创建视图.错错误误!未定义书签。未定义书签。创建索
4、引.错错误误!未定义书签。未定义书签。结束语 错误错误!未定义书签。未定义书签。第一章 系统概述11 系统开发背景21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。零售领域目前呈多元发展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。因此,我们很有必要制定一套合理、有效,规范和实用的超市管理系统,对超市的日常业务进行集中统一的管理。另一方面,IT产业和Internet获得了飞速发展
5、,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。针对超市的特点,为了帮助超市解决现在面临的问题,提高小型超市的竞争力,我们将开发以下系统:前台POS 销售系统、后台管理系统,其中这两个子系统又包含其它一些子功能。12 系统开发意义超市管理作为计算机应用的一个分支,有着手工管理无法比拟的优点。该系统的三大益处有:(1)大大提高超市的运作效率;(2)通过全面的信息采集和处理,辅助提高超市的决策水平;(3)使用本系统,可以迅速提升超市的管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效的技术保障。因此,开发一套能够为消费者及超市工作人
6、员提提供方便的超市管理系统,将是非常必要的,也是十分及时的。第二章系统需求分析21 系统功能要求针对超市的特点,为了帮助超市解决现在面临的问题,提高小型超市的竞争力,我们将开发一个小型的超市管理系统。本系统包括如下功能:前台 POS 销售系统、后台管理系统,其中这两个子系统又包含其它一些子功能。22 系统分析概述221零售前台(POS)管理系统本系统必须具有以下功能:(1)商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊的商品扫描录入。该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入。(2)收银业务:通过扫描
7、条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行 95 折优惠,并将所购物品的总金额累计到该会员的总消费金额中。会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。(3)退货处理:顾客持有销售发票到收银台找收银员退货,若没有相应销售发票不予以退货。通过扫描销售发票计算本次退货处理的退货额,并打印出退货发票给顾客,系统记录
8、好退货信息。(4)安全性:OS 登陆、退出、换班与操作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法操作。(5)独立作业:有的断网收银即在网络服务器断开或网络不通的情况下,收银机仍能正常作业。222 后台管理系统本系统必须具备以下功能:(1)进货管理:根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。按计划单有选择性地进行自动入库登记。综合查询打印计划进货与入库记录及金额。(2)销售管理:商品正常销售、促销与限量、限期及禁止销售控制。综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。按多种方式统计生成销售排行榜,灵活察看和打印商
9、品销售日、月、年报表。(3)库存管理:综合查询库存明细记录。库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。库存自动盘点计算。(4)人员管理:员工、会员、供货商、厂商等基本信息登记管理。员工操作权限管理。客户销售权限管理。23系统层次划分通过对小型超市管理系统及其功能方面的分析,构造出超市管理系统的总体结构图如下:中小型超市销售管理系统零售前台管理后台管理商品录入收银业务退货处理销售管理进货管理库存管理人员管理图 1 超市管理总体结构图由于本系统为管理系统,只是超市管理系统的一部分,因此只实现了收银业务、退货处理和销售管理部分的功能。对这三个处理模块进
10、一步细化得到如下分结构图:收银业务退货处理交易额计算给会员优惠打印交易清单退费额计算输出退货单图 1-1 收银业务结构图图 1-2 退货处理结构图销售管理库存量管理缺货警告货架补货图 1-3 销售处理结构图24 系统程序流程图数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符综合地反映出信息在系统中的流动、处理和存储情况。根据上面业务流程图的描述,从系统的科学性、管理的合理性、实际运行的可行性角度出发,自顶向下对系统进行分解,导出了超市销售管理系统的顶层数据流程图、第一层数据流程图和第二层数据流程图。系统数据流程图符号解释PES图2-1 外部实体图2-2 处理过程图2-
11、3 数据流图2-4 数据存储顶层数据流程图E2顾客交易单E1收银员条形码商品编号P0销售业务处理商品信息S1商品信息商品信息表交易单警告信息处理信息E3管理员图3 顶层数据流程图上图是小型超市管理系统的顶层数据流程图。由业务流程图确定系统开发的外部实体即系统数据的来源与去处,从而确定了整个系统的外部实体和数据流。在顶层数据流程图中,把超市销售管理系统作为一个处理环节,与实体间传递信息,简单的表达系统的各部分功能。第一层数据流程图P0业务处理E2顾客P2退货信息E3管理员警告信息销售信息P3销售处理交易信息处理信息购物发票退货发票退货处理购物发票P1收银业务E1收银员条形码商品编号条形码商品编号
12、会员信息S2会员信息表S1商品信息表商品信息S3商品交易表图3-1 第一层数据流程图确定系统的主要处理功能后,可以将系统分为收银业务、退货处理和销售处理三个模块。再确定各个输入和输出数据流以及与之相关的数据结构,从而得到小型超市管理系统的第一层数据流程图,如上图所示。第二层数据流程图再将第一层数据流程图分解细化可得到第二层流程图,如下图所示:P1收银业务商品信息表S2会员信息表S1条形码商品编号E1收银员商品信息购物信息会员信息给会员优惠S4入库信息表商品库存增减信息商品库存量增减条形码商品编号交易额计算普通购物信息会员购物信息销售信息输出交易清单S3商品交易表购物发票E2顾客图3-1-1 收
13、银业务数据流程图P2 退货处理S3商品交易表S3 商品交易表退货信息流水账号商品信息E2顾客购物发票退货退费额计算信息输出退货单退货商品P3后台处理图3-1-2 退货处理数据流程图P3 销售处理S4P2退货处理P1收银业务S5进货单表进货信息购物信息退货信息入库信息表P货架补货进货信息商品库存增减信息P商品库存量增减库存信息P缺货警告警告信息缺货信息E3管理员图3-1-3 销售处理数据流程图第三章 系统总体设计31 系统总体设计目标小型超市管理系统是超市馆管理工作中不可缺少的部分,它的内容对于超市的管理者和使用者来说都至关重要,所以超市管理系统应该能够为管理者或消费者提供充足的信息和快捷的数据
14、处理手段。对超市前台的收银管理,后台的销售管理、库存管理、财务管理和人员管理这些日常业务的需要,高效性通过系统的实用,能够改变旧的超市管理模式,使对消费者和工作人员的管理、查询更加方便有效。对销售信息进行简单的统计分析,便于总结货物的采购和消费者的需求。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对超市信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。这些优点能够极大地提高超市管
15、理的效率,也是超市的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情。使之减轻管理人员的负担,充分发挥电脑的作用。32 系统概念设计321 概念模型(E-R 图)(1)E-R图会员 E-R图促销起始日期促销价格商品编号商品名称告警量库存量商品进价供货商号促销截止日期生产厂商商品商品备注商品数量商品售价注册日期会员姓名会员卡号累计金额会员卡内余额商品类别商品 E-R图供货商地址供货商电话供货商 E-R图仓库名称仓库供货商供货商号供货商名称仓库编号仓库地址仓库 E-R图交易流水号退货信息表 E-R图退货日期退货信息表商品编号退货金额退货数量会员1时间获得m数量
16、员工1打印n销售单m销售商品n商品收银业务 E-R图打印时间购物发票1打印1营业员m退货信息表退货处理 E-R图销售管理 E-R图收银员退货处理 E-R图打印退货信息表员工销售商品管理m销售日期销售金额购买日期购买流水账号会员供货编号供货日期商品供货数量销售数量销售n收银员nnn供货m供货商1打印m库存n仓库1退货信息表库存量(2)系统 ER 图说明1)商店中的用户销售多个商品。多个商品由同一个用户销售2)商店中的所有顾客可以购买多种商品,每种商品可由不同顾客购买;3)每个顾客可以购买多种商品,不同商品可由不同顾客购买;4)每个供货商可以供应多种不同商品,每种商品可由多个供应商供应。322 关
17、系模式(1)商品信息表(商品编号、商品名称、商品条形码、商品类别、商品售价、商品进价、促销价格、促销起始日期、促销截止日期、库存量、告警量、计划库存量、生产厂商、供货商编号)(2)会员表(会员卡号、会员姓名、累积金额、卡内余额、会员密码、注册日期、有效日期)(3)商品交易表(交易流水号、计数号、交易日期、收银员号(员工编号)、商品编号、商品名称、交易数量、售价、小计、会员卡号)(4)入库信息表(入库编号、商品编号、商品名称、入库量、总额、供货商名称、入库日期、进货员编号(5)供货商表(供货商号、供货商名称、供货商地址、供货商电话)(6)进货单表(进货单编号、进货商品编号、进货商品名称、进货量、
18、进价、总额、供货商名称、进货单生成日期、进货员姓名)(7)员工信息表(员工编号、工作类型、员工姓名、性别、年龄、身份证号、员工工资、员工电话、居住地址、备注信息)(8)退货信息表(交易流水号、商品编号、退货数量、退货金额、退货日期)(9)仓库表(仓库编号,仓库名称,仓库地址)323 关系模式规范化说明(1)商品信息表的主属性是商品编号,其他非主属性完全依赖于主码。商品信息表的建立是为了对商品进行管理。其中,除了基本的商品信息外,如商品编号,名称,价格,存货数量外,还增加了条形码,便于对商品的快速录入(2)会员表的主属性是会员卡号,其他非主属性完全依赖于主码。并且不存在传递依赖关系,因此该顾客表
19、符合第三范式。会员表的建立是为了对会员进行管理以及根据会员情况进行打折活动。(3)商品交易表的主属性是交易流水号,其他非主属性完全依赖于主码。商品交易表是对超市所出售商品的统计,分析出各个商品的销售情况,并可生成销售统计图,从而有针对性的进行商品进购。(4)入库信息表的主属性是入库编号,其他非主属性完全依赖于主码。该表是入库的商品信息进行统计。(5)供货商表的主属性是供货商号,其他非主属性完全依赖于主码。主要是为了对供货商的管理。(6)进货单表的主属性是进货单编号,其他非主属性完全依赖于主码。进货单表是通过商品信息表来统计需要进货的信息。(7)员工信息表的主属性是员工编号,其他非主属性完全依赖
20、于主码。是对员工进行的管理。(8)退货信息表是为了对顾客所退回商品的信息统计,以便更好的进行商品管理和提高对用户的服务。(9)仓库表的主属性是仓库编号,其他非主属性完全依赖于主码。主要是对仓库信息的管理。324 系统数据库表结构商品信息表列名商品编号商品名称商品条形码商品类别商品售价商品进价促销价格促销起始日期促销截止日期库存量告警量计划库存量生产厂商供货商号字段类型VarcharVarcharVarcharVarcharMoneyMoneyMoneyDatetimeDatetimeIntIntIntVarcharVarchar长度10505025444885010主/外键主键外键是否为空No
21、t nullNot nullNot nullNot nullNot nullNot nullNot nullNot nullNot nullNot null会员表列名会员卡号会员姓名累积金额卡内余额会员密码注册日期截止日期字段类型VarcharVarcharMoneyMoneyVarcharDatetimeDatetime长度2010442088主/外键主键商品交易表列名交易流水号计数号交易日期收银员号商品编号商品名称交易数量售价小计会员卡号入库信息表列名入库编号商品编号商品名称入库量总额供货商名称入库日期进货员编号字段类型VarcharVarcharVarcharIntMoneyvarcha
22、rDatetimeVarchar长度101050850810主/外键主键外键外键是否为空Not nullNot nullNot nullNot nullNot nullNot nullNot nullNot null字段类型VarcharIntDatetimeVarcharVarcharVarcharIntMoneyMoneyVarchar长度5081010504420主/外键主键外键外键外键是否为空Not nullNot nullNot nullNot nullNot nullNot nullNot nullNot nullNot null是否为空Not nullNot nullNot nu
23、llNot nullNot nullNot nullNot null供货商表列名供货商号供货商名称供货商地址供货商电话进货单表列名进货单编号商品编号商品名称进货量进价总额供货商名称进货单生成日期进货员姓名员工信息表列名员工编号工作类型员工姓名性别年龄身份证号员工工资员工电话字段类型VarcharVarcharvarcharvarcharvarcharvarcharMoneyvarchar长度10255022505025主/外键主键是否为空Not nullNot nullNot nullNot nullNot nullNot nullNot null字段类型长度varcharVarcharVar
24、charintmoneymoneyvarchardatetimevarchar1010504850810主/外键主键外键是否为空Not nullNot nullNot nullNot nullNot nullNot nullNot nullNot nullNot null字段类型VarcharVarcharVarcharVarchar长度10507025主/外键主键是否为空Not nullNot null居住地址备注信息varcharvarchar70200退货信息表列名交易流水号商品编号退货数量退货金额退货日期字段类型长度varcharVarcharintmoneydatetime50104
25、8仓库表列名仓库编号仓库名称仓库地址字段类型长度varcharVarcharVarchar105070主/外键主键是否为空Not nullNot nullNot null主/外键外键外键是否为空Not nullNot nullNot nullNot nullNot null第四章第四章数据库实施阶段数据库实施阶段建立数据库、数据表、视图、索引建立数据库、数据表、视图、索引建立数据库create database 小型超市管理系统建立数据表(1)商品基本表的建立create table 商品信息(商品编号 varchar(10)primary key,商品名称 varchar(50)not nu
26、ll,商品条形码 varchar(50)not null,商品类别varchar(25)not null,商品售价money not null,商品进价money not null,促销价格money,促销起始日期 datetime,促销截止日期 datetime,库存量intnot null,告警量intnot null,计划库存量 intnot null,生产厂商varchar(50),供货商号 varchar(10)not null,foreign key(供货商号)references 供货商表(供货商号);(2)会员表的建立create table 会员表(会员卡号varchar(2
27、0)primary key,会员姓名varchar(10)not null,累积金额moneynot null,卡内余额moneynot null,会员密码varchar(20)not null,注册日期datetimenot null,截止日期datetimenot null);(3)商品交易表的建立create table 商品交易表(交易流水号 varchar(50)primary key,计数号intnot null,交易日期datetimenot null,收银员号varchar(10)not null,商品编号varchar(10)not null,商品名称varchar(50)n
28、ot null,交易数量intnot null,售价moneynot null,小计moneynot null,会员卡号varchar(20)not null,foreign key(收银员号)references 员工信息表(员工编号),foreign key(商品编号)references 商品信息(商品编号),foreign key(会员卡号)references 会员表(会员卡号);(4)入库信息表的建立create table 入库信息表(入库编号varchar(10)primary key,商品编号varchar(10)not null,商品名称varchar(50)not nul
29、l,入库量intnot null,总额moneynot null,供货商名称 varchar(50)not null,入库日期datetimenot null,进货员编号 varchar(10)not null,foreign key(进货员编号)references员工信息表(员工编号);(5)供货商表的建立create table 供货商表(供货商号varchar(10)primary key,供货商名称varchar(50)not null,供货商地址varchar(70)not null,供货商电话varchar(25)not null);(6)进货单表的建立create table
30、进货单表();进货单编号varchar(10)primary key,商品编号varchar(10)not null,商品名称varchar(50)not null,进货量intnot null,进价moneynot null,总额moneynot null,供货商名称varchar(50)not null,进货单生成日期 datetimenot null,进货员姓名varchar(10)not null,foreign key(商品编号)references 商品信息(商品编号),foreign key(进货员姓名)references 员工信息表(员工编号)(7)员工信息表的建立creat
31、e table 员工信息表();员工编号 varchar(10)primary key,工作类型 varchar(25)not null,员工姓名 varchar(50)not null,性别varchar(2)check(性别 in(男,女),年龄varchar(2)not null,身份证号 varchar(50)not null,员工工资 moneynot null,员工电话 varchar(25)not null,居住地址 varchar(70)not null,备注信息 varchar(200)not null(8)退货信息表的建立create table 退货信息表(交易流水号va
32、rchar(50)not null,商品编号varchar(10)not null,退货数量intnot null,退货金额moneynot null,退货日期datetimenot null,foreign key(交易流水号)references 商品交易表(交易流水号),foreign key(商品编号)references 商品信息(商品编号);(9)仓库表的建立create table 仓库表();仓库编号 varchar(10)primary key,仓库名称 varchar(50)not null,仓库地址 varchar(70)not null,创建视图(1)创建用于查询交易情
33、况的视图create view 交易情况asselect交易日期,收银员号,会员卡号,小计from 商品交易表(2)创建用于查询进货计划create view查询进货计划asselect 进货单表.商品名称,商品条形码,进货量,进货单生成日期,供货商名称,进货员姓名from 商品信息,进货单表where 商品信息.商品编号=进货单表.商品编号(3)创建用于查询销售明细记录create view 销售明细记录asselect商品交易表.商品名称,商品条形码,商品售价,交易数量,交易日期,收银员号,小计from 商品信息,商品交易表,员工信息表where 商品信息.商品编号=商品交易表.商品编号
34、and商品交易表.收银员号=员工信息表.员工编号(4)创建用于查询入库情况create view 入库情况asselect 入库信息表.商品名称,商品条形码,供货商名称,入库量,总额,入库日期from 商品信息,入库信息表,员工信息表where 商品信息.商品编号=入库信息表.商品编号 and入库信息表.进货员编号=员工信息表.员工编号创建索引(1)在商品交易表上建立一个以交易流水号、交易日期为索引项的非聚集索引create nonclustered index交易on 商品交易表(交易流水号,交易日期);(2)在商品信息表上建立一个以商品编号为索引项的非聚集索引create nonclust
35、ered indexIX_商品信息 on 商品信息(商品编号);(3)在入库信息表上建立一个以入库编号、入库日期、商品编号为索引项的非聚集索引create nonclustered index 入库信息 on 入库信息表(入库编号,入库日期,商品编号);结束语通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,将 SQL语言的查询语句用得淋漓尽致,增强了自己在数据库中应用 SQL 语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主键与外主键的定义,约束项的设置,使逻辑更严密。在学习过程中,我也上网查了不少资料,也看了一些别人设计的小型超市信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中从学到用,从用又到学,不断修改,系统更新。虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,知识是无限的,我以后还会在这个领域不断的进行探索,掌握更多的知识。
限制150内