超市收银管理系统数据库设计.doc
- 格式:doc
- 大小:193.57 KB
- 文档页数:22
超市管理数据库系统数据库设计报告版本历史目录超市管理数据库系统 (1)0.文档介绍 (1)0.1文档目的 (1)0.2文档范围 (1)0.3读者对象 (1)0.4参考文献 (1)0.5术语与缩写解释 (1)1.数据库环境说明 (2)1.1数据库环境 (2)1.2系统开发环境 (2)在原始开发阶段,开发平台主要是: (2)系统平台:windows server 2003 (2)开发工具:sqlserver 2005 (2)2.数据库的命名规则 (2)3.需求分析 (2)4.概念设计 (3)5.逻辑设计 (9)6.物理设计 (10)7.安全性设计 (14)7.1防止用户直接操作数据库的方法 (14)7.2视图设计 (15)7.3角色与权限 (15)8.数据库管理与维护说明 (15)附录(代码实现) (15)0.文档介绍0.1文档目的起草本文档主要是为了统一开发小组及用户对本项目中所使用的名词术语的认识,规范开发小组成员在开发过程名词术语的使用习惯和变量命名习惯,帮助开发小组成员熟悉系统的数据处理流程和相关数据存储,加深对系统的认识。
熟练掌握数据库对象的创建和管理,掌握工具的操纵与应用,了解T-SQL语言的基本应用。
0.2文档范围本文档主要内容有系统术语定义、数据库环境说明、数据库命名规则、数据库物理表设计及数据库的安全管理设计等。
0.3读者对象本文档的适用对象主要有系统设计人员、系统编程人员、系统测试评估人员及系统运行维护人员。
0.4参考文献SQL Server 20050.5术语与缩写解释1.数据库环境说明1.1数据库环境服务器:CPU:最低:600MHz,建议:1GHz 或更高内存:最小:512MB,建议:1GB 或更大1.2系统开发环境在原始开发阶段,开发平台主要是:系统平台:windows server 2003开发工具:sqlserver 20052.数据库的命名规则在本数据库中,主要采用驼峰法的命名方法和缩写法,主要规定如下:(1)所有对象的命令都应遵循见名知义原则;(2)所有对象名称的缩写应遵循大家的使用习惯;(3)数据库中各对象命名遵从系统类图中名对象的命名(参考系统分析设计文档);(4)表名都以T(Table)开头,如语种信息数据表命名为:T_Language;(5)视图名都以V(View)开头,后面以相关表名的第二个字母表示,如ViewCorporationKeyword(公司与所注册关键字信息);(6)在数据表中,实体的属性以实体名的缩写+属性英文缩写表示,如语种名称用LanName 表示;(7)SQL Server中数据库命名可以直接使用系统名称,例如学生信息管理数据库可以命名为:StudentInfo;(8)对于各表间有联系的列(主键、外键等)仍使用原表中的列名;(9) 触发器以TR_开头。
超市管理系统数据库设计(doc 20页)部门: xxx时间: xxx整理范文,仅供参考,可下载自行编辑辽东学院本科毕业论文(设计)乐买超市管理系统The Management System of Likebuy Supermarket学生姓名:袁野学院:信息技术学院专业:信息管理与信息系统班级: B0601学号: 0911060115指导教师:陈志勇审阅教师:完成日期:2010年5月25日辽东学院Eastern Liaoning University独创性说明作者郑重声明:本毕业论文(设计)是我个人在指导教师指导下进行的研究工作及取得研究成果。
尽我所知,除了文中特别加以标注和致谢的地方外,毕业论文(设计)中不包含其他人已经发表或撰写的研究成果,也不包含为获得辽东学院或其他单位的学位或证书所使用过的材料。
与我一同工作的同志对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意。
作者签名:___________ 日期:___________摘要随着超市规模的不断扩大和商品数量增加,超市管理人员时时刻刻都需要对商品各种信息进行统计分析。
所以开发一个可以随时对商品的进货、销售情况进行查询的超市管理系统供超市管理人员使用是有必要的。
本文采用结构化分析方法,详细阐述了一个超市管理系统的开发、操作流程和涉及的一些关键技术。
首先,本文在引言部分,简单介绍了项目开发的背景和项目开发的意义;接下来是系统规划阶段,通过对实际的业务流程的调研,分析了系统的组织结构,具体完成了超市管理系统的需求分析、可行性分析、业务流程分析,进而明确了开发应用项目的必要性和可行性;之后是系统分析,具体完成了数据流分析和数据字典;系统设计阶段主要完成了功能模块的划分、数据库的设计和系统界面设计。
该阶段对各个模块的功能进行了详细设计,形成了本系统的功能模块图,在此基础上选择了合适的开发模式;数据库设计时先进行了概念结构设计,之后进行了逻辑结构设计,最后完成了数据库表的设计。
`小型超市收银系统1.课程设计目的应用对数据库系统概论的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。
实践和巩固在课堂教学中学习的关于数据库的有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。
实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库小型超市收银系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程。
2.设计方案论证问题提出以往人工收银准确性小,速度慢,而且事情繁琐的情况已经满足不了如今社会的发展。
本次数据库课程设计就是利用SQL Server 设计出一个小型超市的收银系统来解决以往人工收银的繁琐。
它提供了商品的名称、编号、价格等一系列的产品信息,很大的提高了超市收银的效率。
《可行性研究技术可行性此课程设计均是利用SQL server 2005 企业版软件调试出来的,所以只要操作系统在windowsXP之上的都可以实现SQL server 2005运行,此次所用的操作系统是:WindowsXP,内存:2G,CPU:,硬盘:250G,所以技术上是可行的。
运行可行性随着社会的发展,基本上所有的具有一定数量数据的企事业单位或机关部门都开始使用计算机数据库来做管理。
当然几乎所有公司和企业也都已经在使用计算机管理数据的机制,大大减少了商品管理的工作量。
该课程设计要求设计一个商品管理的数据库系统,数据库中要求包含商品的基本信息,商品管理员信息,商品供应商信息,商品销售商信息以及商品库存的信息。
同时还要设计它们之间的关系,如商品和商品的库存量的信息等,最后还要对一些数据进行查询,如查询商品的各种有关信息等。
我们通过该课程设计,应该达到的目的是把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
课程设计任务书学生姓名: 张修华专业班级:软件0505指导教师:耿枫工作单位:计算机学院题目:超市收银数据库设计初始条件:用来在超市中实现顾客结帐功能,并能反映出指定时段中超市的销售情况等信息。
收银员通过输入商品条码,能够在帐单上打印出商品单价及总额等各项信息,并且能够处理商品打折等各种情况。
要求完成的主要任务:1.根据上述的初始条件,进行调查分析并设计适当的属性。
设计一个仓库数据库,DBMS可选Ms SQL Server、Access、VFP等。
2.完成课程设计说明书,其格式遵守学校今年的新规定。
主要内容包括:需求分析,概念设计,逻辑设计,物理实现等。
3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计语言(工具)任选。
这一项是选作,不作硬性要求。
时间安排:本学期第20周:1.消化资料、系统调查1天2.系统分析1天3.总体设计,实施计划2天4.撰写报告1天指导教师签名:年月日系主任(或责任教师)签名:年月日超市收银管理系统数据库设计1系统概述1。
1设计题目超市收银管理系统数据库设计1.2可行性分析1。
2。
1背景超市是一个很繁忙的地方,每天有很多的顾客要买东西,收银员要和很多的顾客结算,并且要给这些结算存档,以便日后查看。
如果只用人工的方法去处理这些结算和计算的数据将是一件很繁琐的事情,将投入大量的人力物力,为了解决这个问题,实现科学化、现代化的超市收银管理,我们就必须设计开发超市收银系统,并用于实践。
而超市收银管理系统是对超市的收款信息进行管理的计算机网络软件系统,它可完成超市中各种货品的收银工作,并对可以对特定时间段的出售信息进行查询。
1。
3上下文环境图图1.1是一幅上下文环境图,它演示了该超市收银管理系统的外部实体和系统接口.图1。
1超市收银管理管理系统的上下文环境图2系统目标和建设原则2。
1系统目标2。
1。
1近期目标该系统可以使超市的收银工作变得轻松了许多,超市的管理员不必将大量的时间用在对厚厚的账本的管理上,可以直接查询数据库来相关的信息.因此,开发超市收银系统可以提高收银员和管理员的工作效率,利用计算机的方便、快捷、友好的操作环境,来完成相对比较复杂、繁琐的事务,使用户可以轻松地完成对商品的查找等操作,大大提高工作效率。
超市管理系统1、项目计划1.1系统开发目的1大大提高超市的运作效率;2通过全面的信息采集和处理;辅助提高超市的决策水平;3使用本系统;可以迅速提升超市的管理水平;为降低经营成本; 提高效益;增强超市扩张力; 提供有效的技术保障..1.2背景说明21世纪;超市的竞争也进入到了一个全新的领域;竞争已不再是规模的竞争;而是技术的竞争、管理的竞争、人才的竞争..技术的提升和管理的升级是超市业的竞争核心..零售领域目前呈多元发展趋势;多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存..如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模;成为超市营业者努力追求的目标..1.3项目确立针对超市的特点;为了帮助超市解决现在面临的问题;提高小型超市的竞争力;我们将开发以下系统:前台POS销售系统、后台管理系统;其中这两个子系统又包含其它一些子功能..1.4应用范围本系统适应于各种小型的超市..1.5 定义1商品条形码:每种商品具有唯一的条形码;对于某些价格一样的商品;可以使用自定义条形码..2交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号..3商品积压:在一定时期内;远无法完成销售计划的商品会造成积压..4促销:在一定时期内;某些商品会按低于原价的促销价格销售..库存告警提示:当商品的库存数量低于库存报警数量时发出提示..5盘点:计算出库存、销售额、盈利等经营指标..2、逻辑分析与详细分析2.1系统功能1、;本系统必须具有以下功能:商品录入:根据超巿业务特点制定相关功能;可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊的商品扫描录入..该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入..收银业务:通过扫描条形码或者直接输入商品名称对于同类多件商品采用一次录入加数量的方式自动计算本次交易的总金额..在顾客付款后;自动计算找零;同时打印交易清单包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号..如果顾客是本店会员并持有本人会员卡;则在交易前先扫描会员卡;并对所购物品全部实行95折优惠;并将所购物品的总金额累计到该会员的总消费金额中.. 会员卡的有效期限为一年;满一年未续卡者;该会员卡将被注销..安全性:OS登陆、退出、换班与操作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法操作..独立作业:有的断网收银即在网络服务器断开或网络不通的情况下;收银机仍能正常作业2、后台管理系统;本系统必须具备以下功能进货管理:根据销售情况及库存情况;自动制定进货计划亦可手工制定修改;可以避免盲目进货造成商品积压.. 按计划单有选择性地进行自动入库登记.. 综合查询打印计划进货与入库记录及金额..销售管理:商品正常销售、促销与限量、限期及禁止销售控制.. 综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等.. 按多种方式统计生成销售排行榜;灵活察看和打印商品销售日、月、年报表..库存管理:综合查询库存明细记录.. 库存状态自动告警提示..如库存过剩、少货、缺货等..软件为您预警;避免库存商品积压损失和缺货.. 库存自动盘点计算..人员管理:员工、会员、供货商、厂商等基本信息登记管理.. 员工操作权限管理.. 客户销售权限管理..3系统结构系统总体结构小型超市零售管理前台POS销售后台管理系统商品录入收银业务进货管理销售管理库存管理人员管理模块子系统结构功能描述:..功能描述:收银业务子系统能计算交易总额;打印交易清单;并根据会员卡打折..功能描述:进货管理子系统可以根据库存自动指定进货计划;进货时自动等级;以及提供查询和打印计划进货与入库记录的功能..功能描述:销售管理子系统可以控制某商品是否允许销售;查询每种商品的销售情况并产生年、月、日报表;同时可以生成销售排行榜..功能描述:库存管理子系统提供查询库存明细记录的基本功能;并根据库存的状态报警;以及自动盘点计算..功能描述:人员管理子系统提供基本信息登记管理;员工操作权限管理;客户销售权限管理的功能..2.2、流程图前台管理系统顶层DFD图第0层DFD图第1层DFD图2.3、户类型与职能1、员工营业员:通过商品条形码扫描输入商品到购买清单操作软件计算交易总金额操作软件输出交易清单对会员进行会员卡扫描以便打折2、:超市经理操作软件录入商品;供货商;厂商操作软件制定进货计划查询打印计划进货与入库记录操作软件控制商品销售与否查询打印销售情况操作软件生成销售排行榜查询库存明细记录根据软件发出的库存告警进行入货操作软件进行盘点计算3、总经理:基本信息登记管理员工操作权限管理客户销售权限管理2.4、统开发步骤确定参与者和相关的用况为每个用况设计过程建立顺序图;确定每个脚本中对象的协作创建类;确定脚本中的对象设计; 编码; 测试; 集成类为过程编写系统测试案例运行测试案例;检验系统2.5、系统环境需求系统模式本系统采用C/S模式作为开发模式硬件环境服务器端:高性能的计算机一台;普通的双绞线作为连接..客户端:普通的计算机或者工作站;普通的双绞线作为连接..软件环境服务器端:安装SQL Server 2000的服务器版本;安装windows 2000服务器版本;配置了诺顿等必须的防毒软件..客户端:安装SQL Server2000的服务器版本;安装了VB等可视化开发工具软件;安装windows2000服务器版本..3、系统概念设计1、系统ER图2、系统ER图说明1)商店中的所有用户员工可以销售多种商品;每种商品可由不同用户员工销售;2)每个顾客可以购买多种商品;不同商品可由不同顾客购买;3)每个供货商可以供应多种不同商品;每种商品可由多个供应商供应..3、视图设计1)交易视图v_Dealing——用于查询交易情况的视图;2)计划进货视图v_PlanStock——用于查询进货计划的视图;3)销售视图v_Sale——用于查询销售明细记录的视图;4)入库视图v_Stock——用于查询入库情况的视图..4、逻辑设计1、系统关系模型a)商品信息表商品编号;商品名称;价格;条形码;促销价格;促销起日期;促销止日期;允许打折;库存数量;库存报警数量;计划进货数;允许销售;厂商编号;供货商编号b)用户表用户编号;用户名称;用户密码;用户类型c)会员表会员编号;会员卡号;累积消费金额;注册日期d)销售表销售编号;商品编号;销售数量;销售金额;销售日期e)交易表交易编号;用户名称;交易金额;会员卡号;交易日期f)进货入库表入库编号;入库商品编号;入库数量;单额;总额;入库日期;计划进货日期;入库状态g)供货商表供货商编号;供货商名称;供货商地址;供货商电话h)厂商表厂商编号;厂商名称;厂商地址;厂商电话2、系统数据库表结构数据库表索引商品信息表MerchInfo用户表User会员表Menber销售表Sale交易表Dealing入库纪录表Stock供货商表Provide厂商表Provide5、源码/----------创建数据库----------/create database SuperMarketdbon primaryname=SuperMarketdb;filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.mdf';size=100MB;maxsize=200MB;filegrowth=20MBlog onname=SuperMarketlog;filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.ldf';size=60MB;maxsize=200MB;filegrowth=20MBgo/----------创建基本表----------/use SuperMarketdbgo/创建交易表/CREATE TABLE DealingDealingID int identity1;1 Primary key ;DealingDate datetime NOT NULL ;DealingPrice money NOT NULL ;UserName varchar25 NULL ;MemberCard varchar20 NULLGO/创建厂商表/CREATE TABLE FactoryFactoryID varchar10 Primary key ;FactoryName varchar50 NOT NULL ;FactoryAddress varchar250 NULL ;FactoryPhone varchar50 NULLGO/创建会员表/CREATE TABLE MemberMemberID varchar10 Primary key ;MemberCard varchar20 NOT NULL ;TotalCost money NOT NULL ;RegDate datetime NOT NULLGO/创建商品信息表/CREATE TABLE MerchInfoMerchID int identity1;1 Primary key ;MerchName varchar50 Unique NOT NULL ;MerchPrice money NOT NULL ;MerchNum int NOT NULL ;CautionNum int NOT NULL ;PlanNum int NOT NULL ;BarCode varchar20 Unique NOT NULL ;SalesProPrice money NULL ;SalesProDateS datetime NULL ;SalesProDateE datetime NULL ;AllowAbate int NOT NULL ;AllowSale int NOT NULL ;FactoryID int NOT NULL ;ProvideID int NOT NULLGO/创建供应商表/CREATE TABLE ProvideProvideID varchar10 Primary key ;ProvideName varchar50 NOT NULL ;ProvideAddress varchar250 NULL ;ProvidePhone varchar25 NULLGO/创建销售表/CREATE TABLE SaleSaleID int identity1;1 Primary key ;MerChID int NOT NULL ;SaleDate datetime NOT NULL ;SaleNum int NOT NULL;SalePrice money NOT NULLGO/创建入库表/CREATE TABLE StockStockID int identity1;1 Primary key ;MerchID int NOT NULL ;MerchNum int NOT NULL ;MerchPrice money NULL ;TotalPrice money NULL ;PlanDate datetime NULL ;StockDate datetime NULL;StockState int NOT NULLGO/创建用户表/CREATE TABLE UserUserID varchar10 Primary key ;UserName varchar25 NOT NULL ;UserPW varchar50 NOT NULL ;UserStyle int NOT NULL ;GO/----------创建表间约束----------//商品信息表中厂商编号、供应商编号分别与厂商表、供应商表之间的外键约束/ ALTER TABLE MerchInfo ADDCONSTRAINT FK_MerchInfo_Factory FOREIGN KEYFactoryIDREFERENCES FactoryFactoryID;CONSTRAINT FK_MerchInfo_Provide FOREIGN KEYProvideIDREFERENCES ProvideProvideIDGO/销售表中商品编号与商品信息表之间的外键约束/ ALTER TABLE Sale ADDCONSTRAINT FK_Sale_MerchInfo FOREIGN KEYMerChIDREFERENCES MerchInfoMerchIDON DELETE CASCADEGO/入库表中商品编号与商品信息表之间的外键约束/ ALTER TABLE Stock ADDCONSTRAINT FK_Stock_MerchInfo FOREIGN KEYMerchIDREFERENCES MerchInfoMerchIDON DELETE CASCADEGO/----------创建索引----------//在交易表上建立一个以交易编号、交易日期为索引项的非聚集索引/CREATE nonclustered INDEX IX_Dealing ON DealingDealingID; DealingDate GO/在商品信息表上建立一个以商品编号为索引项的非聚集索引/CREATE nonclustered INDEX IX_MerchInfo ON MerchInfoMerchIDGO/在销售表上建立一个以销售编号、销售日期为索引项的非聚集索引/CREATE nonclustered INDEX IX_Sale ON SaleSaleID; SaleDateGO/在入库表上建立一个以入库编号、入库日期、商品编号为索引项的非聚集索引/ CREATE nonclustered INDEX IX_Stock ON StockStockID; StockDate; MerchID GO/----------创建视图----------//创建用于查询交易情况的视图/CREATE VIEW v_DealingASSELECT DealingDate as 交易日期;UserName as 员工名称;MemberCard as 会员卡号;DealingPrice as 交易金额FROM DealingGO/创建用于查询进货计划的视图/CREATE VIEW v_PlanStockASSELECT Stock.StockID as SID;MerchInfo.MerchName as 商品名称;MerchInfo.BarCode as 条形码;Factory.FactoryName as 厂商;Provide.ProvideName as 供货商;Stock.MerchNum as 计划进货数量;Stock.PlanDate as 计划进货日期FROM Stock;MerchInfo;Provide;FactoryWhere Stock.MerchID = MerchInfo.MerchIDand Provide.ProvideID=MerchInfo.ProvideID and Factory.FactoryID=MerchInfo.FactoryID and Stock.StockState=0GO/创建用于查询销售明细记录的视图/CREATE VIEW v_SaleASSELECT MerchInfo.MerchName as 商品名称;MerchInfo.BarCode as 条形码;MerchInfo.MerchPrice as 商品价格;Sale.SalePrice as 销售价格;Sale.SaleNum as 销售数量;Sale.SaleDate as 销售日期FROM Sale INNER JOINMerchInfo ON Sale.MerChID = MerchInfo.MerchID GO/创建用于查询入库情况的视图/CREATE VIEW v_StockASSELECT MerchInfo.MerchName as 商品名称;MerchInfo.BarCode as 条形码;Factory.FactoryName as 厂商;Provide.ProvideName as 供货商;Stock.MerchPrice as 入库价格;Stock.MerchNum as 入库数量;Stock.TotalPrice as 入库总额;Stock.StockDate as 入库日期FROM Stock;MerchInfo;Provide;FactoryWhere Stock.MerchID = MerchInfo.MerchIDand Provide.ProvideID=MerchInfo.ProvideIDand Factory.FactoryID=MerchInfo.FactoryIDand Stock.StockState=1GO6、小结和传统管理模式相比较;使用本系统;毫无疑问会大大提高超市的运作效率;辅助提高超市的决策水平;管理水平;为降低经营成本; 提高效益;减少差错;节省人力;减少顾客购物时间;增加客流量;提高顾客满意度;增强超市扩张能力; 提供有效的技术保障..由于开发者能力有限;加上时间仓促;本系统难免会出现一些不足之处;例如:本系统只适合小型超市使用;不能适合中大型超市使用;超市管理系统涉及范围宽;要解决的问题多;功能复杂;实现困难;但由于限于时间;本系统只能做出其中的一部分功能;对于以上出现的问题;深表歉意;如发现还有其它问题;希望老师批评指正..。
数据库系统程序设计超市前台管理系统班级:学号:姓名:1、设计题目超市收银管理系统数据库设计2、可行性分析超市是一个很繁忙的地方,每天有很多的顾客要买东西,收银员要和很多的顾客结算,并且要给这些结算存档,以便日后查看。
如果只用人工的方法去处理这些结算和计算的数据将是一件很繁琐的事情,将投入大量的人力物力,为了解决这个问题,实现科学化、现代化的超市收银管理,我们就必须设计开发超市收银系统,并用于实践。
而超市收银管理系统是对超市的收款信息进行管理的计算机网络软件系统,它可完成超市中各种货品的收银工作,并对可以对特定时间段的出售信息进行查询。
3、上下文环境图下图是一幅上下文环境图,它演示了该超市收银管理系统的外部实体和系统接口。
4、系统总体结构(1)总体DFD图为总体结构,我们对其中的超市前台销售进行分析。
(2)功能结构在此次设计中,依据系统结构化设计方法,把本系统划分为若干个功能模块,某些模块又可以划分为多个子模块,某些子模块又可划分为多个二级子模块,经层层分解后,最小的子模块的功能便十分明确和简单了。
这样做,不仅展现了一个应用软件系统的整体性和层次性,而且通过屏幕对每个应用模块有明显的提示,在这些提示下,用户可以方便地进入系统的每一层进行操作,可以非常方便地使用这一数据库应用系统。
a 、超市收银前台系统功能结构图b 、主要功能说明商品销售信息管理功能。
该功能模块是把要销售的商品从超市中取出来,并对库存商品进行相应的记录管理,并且把顾客的购买信息打印下来给顾客做凭证。
需要记录的内容有:出售商品的名称、类型、销售价格、数量、销售时间等,同时能够实现对商品销售信息的添加、修改、删除和查询功能。
(3)数据库结构 a 、数据字典b 、E-R 图为了把系统的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念性的数据模型(E-R图)。
它描述了从用户角度看到的数据,它反映了用户的显示环境,而且与在软件中的实现方法无关。
超市收银管理系统数据库设计引言超市收银管理系统是一种常见的商用软件,用于管理超市的销售和库存。
本文将介绍超市收银管理系统的数据库设计,包括数据库架构、表结构和数据关系等。
数据库架构超市收银管理系统的数据库采用关系型数据库,使用MySQL作为数据库管理系统。
数据库系统的架构如下:•关系型数据库管理系统 (RDBMS)–MySQL Server关系型数据库管理系统是一种基于关系模型的数据库管理系统,能够通过表格的形式存储和组织数据。
MySQL是一种常用的开源关系型数据库管理系统,具有稳定性和高性能的特点。
表结构设计超市收银管理系统的数据库包含多个表,用于存储不同类型的数据。
以下是各个表的定义:1. 商品表 (products)商品表存储超市中销售的商品信息。
字段类型描述id int 商品IDname varchar(255) 商品名称price decimal(10,2) 商品单价stock int 商品库存category_id int 商品类别ID2. 商品类别表 (categories)商品类别表存储商品的类别信息。
字段类型描述id int 类别ID3. 销售单表 (orders)销售单表存储每一笔销售的订单信息。
字段类型描述id int 订单IDorder_date datetime 订单日期customer_id int 客户IDtotal_amount decimal(10,2) 订单总金额4. 销售明细表 (order_details)销售明细表存储每个销售订单中商品的详细信息。
字段类型描述id int 明细IDorder_id int 订单IDproduct_id int 商品IDquantity int 销售数量unit_price decimal(10,2) 商品单价total_price decimal(10,2) 商品总价5. 客户表 (customers)客户表存储超市的客户信息。
丽水学院计算机实验报告课程:网络数据库班级:学号:姓名:仪器编号13 实验日期2010-06-17实验:四、简单的超市管理系统的设计与实现实验目的:1.进一步熟悉oracle的各种操作;2.能够在实际的实例中灵活运用学到的有关知识;3.通过本次实验,了解到软件系统创建数据库的过程,以便日后自己在做软件系统中,能够进行各种数据库操作。
实验环境:Windows xp + Oracle 11g + Microsoft word 2000实验内容:(可用附页)见附页实验结果:(可用附页)见附页小型超市管理系统数据库的设计数据库设计是对于一个给定的应用环境,构建一个最优的数据库模式,并据此建立既能有效、完整、安全存储数据的数据库,又能满足多个用户的信息要求和处理要求的应用系统,本数据库设计就是为了能够在很好的管理超市的所有数据而进行设计。
(结合数据库设计和你要完成的系统进行陈述)。
数据库设计的过程包含需求分析、概念结构设计、逻辑结构设计、物理结构设计、应用的设计。
下面就按照数据库设计的过程进行逐一陈述一、需求分析1.系统设计的意义(1)大大提高超市的运作效率;(2)通过全面的信息采集和处理,辅助提高超市的决策水平;(3)使用本系统,可以迅速提升超市的管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效的技术保障。
2.需求收集(1)商品信息表(2)用户(员工)表(3)会员表(4)会员消费记录表3.业务逻辑分析商品录入:快速录入商品、支持条形码扫描收银业务:计算交易总额、打印交易清单、根据会员卡打折销售管理:商品销售控制、查询打印销售情况、生成销售排行榜人员管理:基本信息登记管理、员工操作权限管理、客户销售权限管理4.具体功能分析二、概念结构设计1、局部E—R图(1)用户(员工)(2)商品(3)会员(4)会员消费记录2、各实体间的联系三、逻辑结构的设计商品信息表用户表会员表会员消费记录表四、物理结构设计1、创建表空间create tablespace ztftploggingdatafile 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\ztftp01.dbf' size 50mautoextend onnext 32m maxsize 2048mextent management local;2、创建用户并使用上面的表空间并赋予使用表空的权限create user ztf07113 identified by ztf1987default tablespace ztftptemporary tablespace TEMP;alter user ztf07113default tablespace ztftpquota 10M on ztftp;3、赋予用户系统权限grant create session to ztf07113;grant sysdba to ztf07113;grant create table to ztf07113;grant select any table to ztf07113;grant alter any table to ztf 07113;grant drop any table to ztf07113;grant create view to ztf07113;grant create any trigger to ztf07113;4、创建基本表/***创建商品信息表**/create table goodsinfo(goodsid number(4),goodsname varchar2(50),goodsprice number(4));/***创建用户表**/create table user(userid number(10),username varchar2(25),userpw number(38),userstyle number(4));/***创建会员表**/create table member(memberid number(10),membername varchar2(20),totalcost number(4),regdate number(8));/***会员消费记录表**/Create table expense(memberid number(10),goodsid number(4));5、创建触发器/***当消费记录表中增加一条记录后,则更新会员表中的累计消费金额**/create or replace triggerafter insert on expensefor each rowdeclareprice number;beginselect goodsinfo.goodsprice into pricefrom goodsinfo,expensewhere goodsinfo.goodsid = expense.goodsid AND goodsinfo.goodsid = :new.goodsid;update memberset totalcost = totalcost + pricewhere member.memberid = expense.memberid;end;6、创建视图/***查看会员编号为XXX的消费记录视图**/create view aaaasselect member.memberid, goodsinfo.goodsnamefrom goodsinfo,member,expensewhere member.memberid=expense.memberid AND expense.goodsid=goodsinfo.goodsid/***查看累计消费在100元以上的会员编号视图**/create view bbbasselect member.memberid,member.totalcostfrom member;7.测试用例insert into goodsinfovalues("00001","可口可乐","3.5");insert into goodsinfovalues("00002","乡巴佬鸡腿","5.0");insert into goodsinfovalues("00003","洽洽瓜子","4.5");insert into goodsinfovalues("00004","旺旺雪饼","4.5");insert into uservalues("01","朱铁锋","12345","收银员");insert into uservalues("02","杨建","12345","收银员");insert into uservalues("03","陈定苗","12345","搬运工");insert into uservalues("04","严小林","12345","搬运工");insert into membervalues("00001","周建东","500","2010-01-01");insert into membervalues("00002","吴育锋","200","2010-01-01");insert into membervalues("00003","封建林","250","2010-01-01");insert into expensevalues("00001","00002");insert into expensevalues("00002","00001");insert into expensevalues("00003","00004");insert into expensevalues("00004","00003");五、小结和传统管理模式相比较,使用本系统,毫无疑问会大大提高超市的运作效率,辅助提高超市的决策水平,管理水平,为降低经营成本,提高效益,减少差错,节省人力,减少顾客购物时间,增加客流量,提高顾客满意度,增强超市扩张能力,提供有效的技术保障。
数据库原理与应用课程设计报告超市管理系统设计一、需求分析1 项目背景1.1 编写目的本需求的编写目的在于研究超市管理系统软件的开发途径和应用方法。
本需求的预期读者是与超市管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。
1.2 背景及范围本项目的名称:超市管理系统开发软件。
本项目的任务提出者及开发者是超市管理系统软件开发小组,用户是超市。
超市管理系统:超市管理系统是帮助管理人员、商品销售和库存的管理软件。
2 项目概述该超市管理系统软件目前已有比较完善的管理与使用功能,研制超市管理系统软件是为了满足超市对商品销售和库存管理的方便,以现代化的创新思维模式去工作。
2.1 目标2.1.1 开发意图a. 为了超市管理系统更完善;b. 为了超市对商品库存和销售的管理更方便;c. 为了减轻工作人员的工作负担。
2.1.2 应用目标通过本系统软件,能帮助工作人员利用计算机,快速方便的对超市进行管理等操作,使散乱的商品销售量和库存量能够具体化、直观化、合理化。
2.1.3 作用及范围本软件适用于超市,它是比较完善的系统管理软件2.1.4 背景现今超市管理的烦琐给具有强烈时间观念的行政人员带来了诸多不便,为了对商品销售和管理商品库存方便,因此开发了本软件。
2.2 一般约束a. 本项目的开发经费不超过1万元;b. 辅导老师1人,开发人员1人;c. 在管理方针、硬件的限制、并行操作安全和保密方面无约束。
2.3 假设和依据假设开发经费不到位,管理不完善,设计时没能用全得到考虑,本项目的开发都将受到很大的影响。
3 功能需求3.1 规格说明查询超市的全部信息。
3.2 引言为了查询超市的全部信息。
3.2.13.3 性能需求3.3.1静态数值需求a. 支持的终端数为4台;b. 处理并发的40个链接;3.3.2 精度需求在精度需求上,根据使用需要,在各项数据的输入、输出及传输过程中,由于本系统使用了数摞结构,可以满足各种精度的需求。
课程设计任务书学生姓名:张修华专业班级:软件0505指导教师:耿枫工作单位:计算机学院题目:超市收银数据库设计初始条件:用来在超市中实现顾客结帐功能,并能反映出指定时段中超市的销售情况等信息。
收银员通过输入商品条码,能够在帐单上打印出商品单价及总额等各项信息,并且能够处理商品打折等各种情况。
要求完成的主要任务:1.根据上述的初始条件,进行调查分析并设计适当的属性。
设计一个仓库数据库,DBMS可选Ms SQL Server、Access、VFP等。
2.完成课程设计说明书,其格式遵守学校今年的新规定。
主要内容包括:需求分析,概念设计,逻辑设计,物理实现等。
3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计语言(工具)任选。
这一项是选作,不作硬性要求。
时间安排:本学期第20周:1.消化资料、系统调查1天2.系统分析1天3.总体设计,实施计划2天4.撰写报告1天指导教师签名:年月日系主任(或责任教师)签名:年月日超市收银管理系统数据库设计1系统概述1.1设计题目超市收银管理系统数据库设计1.2可行性分析1.2.1背景超市是一个很繁忙的地方,每天有很多的顾客要买东西,收银员要和很多的顾客结算,并且要给这些结算存档,以便日后查看。
如果只用人工的方法去处理这些结算和计算的数据将是一件很繁琐的事情,将投入大量的人力物力,为了解决这个问题,实现科学化、现代化的超市收银管理,我们就必须设计开发超市收银系统,并用于实践。
而超市收银管理系统是对超市的收款信息进行管理的计算机网络软件系统,它可完成超市中各种货品的收银工作,并对可以对特定时间段的出售信息进行查询。
1.3上下文环境图图1.1是一幅上下文环境图,它演示了该超市收银管理系统的外部实体和系统接口。
图1.1超市收银管理管理系统的上下文环境图2系统目标和建设原则2.1系统目标2.1.1近期目标该系统可以使超市的收银工作变得轻松了许多,超市的管理员不必将大量的时间用在对厚厚的账本的管理上,可以直接查询数据库来相关的信息。
因此,开发超市收银系统可以提高收银员和管理员的工作效率,利用计算机的方便、快捷、友好的操作环境,来完成相对比较复杂、繁琐的事务,使用户可以轻松地完成对商品的查找等操作,大大提高工作效率。
2.1.2远期目标随着超市规模的扩大,商品种类的日益增加,对商品库存的管理越来越复杂,功能也需要不断的加强和扩充,本系统希能够通过不同版本的升级来完成业务功能的不断扩充和更新以完成更加复杂的工作。
最终目标是方便超市收银员和管理员的各项操作。
2.2建设原则在本次课程设计中,应该以实际情况为主,在此基础上实现对实际情况的抽象,并设计和建立数据库,完成应用程序界面的人性化地编写。
应该把所学的知识应用于实践。
比如怎样使设计的数据库满足第一范式、第二范式、第三范式、数据完整性约束等等条件。
另外,对数据库的设计因遵循以下步骤:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施以及数据库运行和维护。
最后,应该严格按照课程设计任务书和指导老师的要求,详细认证地完成对本次课程设计说明书的撰写。
3支撑环境规划3.1网络逻辑结构该超市收银管理系统系统是为了方便超市收银员和管理员的操作而设计的,为每个商品管理人员和收银员配备了一台电脑,并把所有的电脑联入超市局域网内,以方便管理。
为了对数据的安全性、准确性地保护,这些电脑都共享一个后台数据库。
本系统采用下图局域网模式来构建的:图3.1 超市收银管理系统的局域网逻辑结构设计3.2软件支撑环境及开发工具3.2.1软件支撑环境本系统是在下列系统配置下完成的:(1) 操作系统: Microsoft Windows XP Professional (SP2)(2) 中央处理器(CPU): Inter(R) Pentium(R) 4 CPU 2.40GHz Prescott Processor(3) 主板: P4i65PE-M(4) 显卡: NVIDIA GeForce FX 5200 (显存128M)(5) 硬盘: SAMSUNG SP0812C 80G 7200转/分(6) 内存: DDR 400(PC3200) 512MB3.2.2开发工具本系统是在下列开发环境下完成的:(1) 应用程序开发环境:Microsoft Visual Studio 6.0/Microsoft Visual Basic 6.0(2) 后台数据库开发工具:Microsoft SQL Server 2000(3) 文档开发环境:Microsoft Office Word 20034系统总体结构4.1 总体DFD图4.1 超市收银管理系统总体数据流图4.2 功能结构在此次设计中,依据系统结构化设计方法,把本系统划分为若干个功能模块,某些模块又可以划分为多个子模块,某些子模块又可划分为多个二级子模块,经层层分解后,最小的子模块的功能便十分明确和简单了。
这样做,不仅展现了一个应用软件系统的整体性和层次性,而且通过屏幕对每个应用模块有明显的提示,在这些提示下,用户可以方便地进入系统的每一层进行操作,可以非常方便地使用这一数据库应用系统。
4.2.1功能结构图(a)(b)(c)(d)(e)图4.2超市收银管理系统功能结构图(a)~(e)4.2.2主要功能说明本系统主要分成四个功能模块,每个模块都独立的完成了自己的功能,以下是对各功能模块的说明:(1) 用户信息管理功能。
该功能模块可以实现系统用户对自己基本信息的修改,不过只限于对登录密码的修改,因为用户帐号都是超市为了方便管理而事先分配好了的,是不能改变的。
出于对用户信息的安全性考虑,只能修改当前登录的用户的密码。
(2) 商品入库信息管理功能。
该功能模块是实现对即将入库的商品的统计,由于商品信息的庞大、复杂,在入库前需要对其进行详细地记录管理,为商品的库存管理打下良好的基础。
需要记录的内容有:入库商品的商品号、名称、类型、价格、同类商品的数量、采购员、验收员、生产厂商、产地、入库时间等。
同时能够实现对商品入库信息的添加、修改、删除和查询功能。
(3) 商品库存信息管理功能。
该功能模块是当入库的商品放入超市后,对库存商品进行统计管理,主要入库信息来源于(2)中的商品入库信息记录。
需要记录的内容有:库存商品的名称、类型、入库价格、销售价格、库存量、入库时间、有效期等,同时能够实现对商品库存信息的添加、修改、删除和查询功能。
在商品批量销售后,在表中能够同时删除相应的商品的数量。
(4) 商品销售信息管理功能。
该功能模块是把要销售的商品从超市中取出来,并对库存商品进行相应的记录管理,并且把顾客的购买信息打印下来给顾客做凭证。
需要记录的内容有:出售商品的名称、类型、销售价格、数量、销售时间等,同时能够实现对商品销售信息的添加、修改、删除和查询功能。
4.3 数据库结构4.3.1数据字典注:数据字典中的某些模块在初期设计中尚未实现。
4.3.2 E-R 图为了把系统的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念性的数据模型(E-R 图)。
它描述了从用户角度看到的数据,它反映了用户的显示环境,而且与在软件中的实现方法无关。
以下便是本系统的E-R 图表示:(a)上图(b)下图(c)(d)图4.3 超市收银管理管理系统E-R图(a)~(d)4.3.3关系数据库模式在本系统的数据库设计中,设计了四个基本数据库表:用户资料表USERS,商品入库资料表GOODS_IMPORT,库存商品资料表GOODS_INFO,商品销售资料表GOODS。
具体结构图如下列表所示:表4.1 USERS表表4.2 GOODS_IMPORT表表4.3 GOODS_INFO表表4.4 GOODS表ISIN 是否入库int N 1:是 0:否5总体实施计划(1) 首先,根据所作的需求分析,完成基本的功能界面设计,并且把界面设计成方便、易用和人性化的用户界面。
(2) 根据(1)中界面设计,把每个功能通过代码来实现,以完成功能的定义。
(3) 根据4.3.3关系数据库模式中的数据库表的设计,并通过SQL Server 2000建立数据库。
(4) 把设计好的界面和数据库连接起来,使整个系统能够运行。
(5) 选取几个典型的例子对该系统进行测试,不断地发现问题和解决问题,最终使该系统能够正常的运行,完成相应的任务。
(6) 以下是该系统的主要界面,用MFC进行设计的:图5.1 登录界面图5.2 主控界面图5.3 收银员结账界面图5.4 查询已出售商品界面这些主要界面代表了系统中的主要风格,功能和界面都大致与这些界面设计的一样。
所以不再一一列出。
6 研制报告6.1 研制过程(1) 需求分析首先,我在拿到课程设计题目时就开始做前期的需求分析,比如详细调查现实世界里的超市商品管理是怎么样的一个系统、它有哪些功能、明确它的用户、需要对哪些数据进行操控以及该系统要做什么不能做什么等等,并画出系统高层抽象图以及简要的数据流图和数据字典来帮助分析。
(2) 概念结构设计其次,我根据搜集的信息资料掌握一个大概的系统框架,把框架分成几个小的功能模块,并逐个的进行分析设计。
在不断的返回进行需求分析时,进行数据抽象、局部视图的设计(分E-R图),把个局部视图集成(总E-R图),并优化E-R 图。
(3) 逻辑结构设计然后,把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
本系统的分析过程中是把基本的E-R图转换为关系模型的,并对关系数据模型进行优化。
(4) 物理结构设计最后,进行物理结构设计,它的任务是为给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。
主要设计内容有:为关系模式选择存取方法;设计关系、索引等数据库文件的屋物理存储结构。
(5) 数据库的实施和维护完成数据库的物理设计之后,就可以在查询分析器中进行数据库的测试和完善。
然后就可以组织数据入库。
数据库试运行合格后,可以投入正式运行了。
但是,由于应用环境在不断的变化,数据库运行过程中物理存储也会不断变化,所以在数据库运行阶段,也要对数据库经常性的维护。
(6) 总结在这次我的系统设计中,其实这些步骤是一个不断重复和不断的完善的过程,最终达到实验的要求。
6.2 本规划的评价(1) 本规划的特点该数据库的设计较好的完成了实验的目的,并且能够较好的投入运行,而且与应用程序的连接也比较理想。
另外,应用程序的各功能模块分工明确可重用性也很强。
另外,本系统可以把出售的商品信息打印给顾客作为凭证。
(2) 本规划的不足该程序还有很多细节问题,另外程序还没有完全完善,还有几个子模块没有实现。
6.3 收获与体会我觉得这次实验的收获和体会很大,主要有一下几点:(1) 在这次试验中我对数据库系统设计的基本框架有了更深地认识和学习,而且学习了数据库设计的基本步骤以及每个步骤的主要任务。