您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 市场营销 > 数据库-超市收银系统课程设计
小型超市收银系统1.课程设计目的应用对数据库系统概论的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。实践和巩固在课堂教学中学习的关于数据库的有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库小型超市收银系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程。2.设计方案论证2.1问题提出以往人工收银准确性小,速度慢,而且事情繁琐的情况已经满足不了如今社会的发展。本次数据库课程设计就是利用SQLServer设计出一个小型超市的收银系统来解决以往人工收银的繁琐。它提供了商品的名称、编号、价格等一系列的产品信息,很大的提高了超市收银的效率。2.2可行性研究2.2.1技术可行性此课程设计均是利用SQLserver2005企业版软件调试出来的,所以只要操作系统在windowsXP之上的都可以实现SQLserver2005运行,此次所用的操作系统是:WindowsXP,内存:2G,CPU:2.10GHZ,硬盘:250G,所以技术上是可行的。2.2.2运行可行性随着社会的发展,基本上所有的具有一定数量数据的企事业单位或机关部门都开始使用计算机数据库来做管理。当然几乎所有公司和企业也都已经在使用计算机管理数据的机制,大大减少了商品管理的工作量。该课程设计要求设计一个商品管理的数据库系统,数据库中要求包含商品的基本信息,商品管理员信息,商品供应商信息,商品销售商信息以及商品库存的信息。同时还要设计它们之间的关系,如商品和商品的库存量的信息等,最后还要对一些数据进行查询,如查询商品的各种有关信息等。我们通过该课程设计,应该达到的目的是把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。商品管理系统主要针对于日常商品信息的管理,它针对商品日常发生的业务,分为了两大类,即商品提供商和商品销售商以及入库和出库的信息,用户通过相应的模块,对商品的基本情况进行操作,对商品库存数量进行查询,用户通过简单的操作即可轻松的管理商品。2.3需求分析2.3.1需求分析查询功能。商品管理对查询要求高,通过主菜单记录当前操作用户的工作证号,保证了对进、出库商品信息录入管理员的确认。管理员信息与库存报表生成。管理员包括了管理员工作证号,所管理的仓库号,以及仓库中所存的商品号。报表主要分类为:仓库报表,商品报表,销售商报表,销售商报表和管理员报表等。应用计算机管理后,由于计算机能存贮大量的数据,而且数据只要一次存入,便可多次重复使用,所以管理数据达到完整,统一,原始记录能保证及时,准确。2.3.2数据字典收银管理系统数据流图中,数据信息和处理过程需要通过数据字典才能描述清楚。在定义的商品数据库管理系统数据字典中,主要对数据流图中的数据项、数据流、数据存储和处理过程进行说明。(1)名称:商品定价描述:唯一标识每种商品的价格类型:字符型长度:50逻辑结构:不允许为空(2)名字:积分卡信息描述:顾客拥有的积分卡里的信息类型:字符型长度:50(3)名字:折扣规则描述:根据顾客积分进行商品价格折扣的规则类型:字符型长度:50(4)名字:积分累积规则描述:由经理确定的顾客每次消费产生的积分的规则类型:字符型长度:50位置:积分卡规则(5)名字:登陆信息描述:职工登陆时使用的账号和密码类型:字符型长度:50逻辑结构:不允许为空(6)名字:姓名描述:超市员工姓名类型:字符型长度:50逻辑关系:不允许为空(7)名字:联系电话描述:超市员工电话类型:字符型长度:50逻辑结构:允许为空(8)名字:性别描述:超市员工的性别类型:字符型长度:50逻辑结构:不允许为空(9)名字:库存数量描述:商品在仓库中的剩余数量类型:数值型长度:随机逻辑结构:不允许为空(10)名字:进价描述:商品从供货商买进时的价格类型:字符型长度:50逻辑结构:不允许为空(11)名字:生产商描述:商品生产的厂商类型:字符型长度:50逻辑结构:不允许为空(12)名字:备注描述:供货的备注项类型:字符型长度:随机逻辑结构:允许为空(13)名字:流水号描述:每次交易的账号类型:字符型长度:50逻辑结构:不允许为空(14)名字:销售记录表描述:收银员扫描商品后,系统自动生成的销售记录表类型:字符型长度:随机逻辑结构:不允许为空(15)名字:库存记录表描述:扫描过的商品,系统会自动删除卖出的商品,库存管理员进货后,超市管理员利用系统自动添加新进商品。类型:字符型长度:随机逻辑结构:不允许为空(16)名字:供应商名称描述:供应商品单位类型:字符型长度:50逻辑结构:不允许为空(17)名字:供应商地址描述:供应商的所在地类型:字符型长度:50逻辑结构:不允许为空(18)名字:供应商电话描述:供应商的联系方式类型:字符型长度:50逻辑结构:不允许为空2.3.3数据结构描述(1)数据流名称:商品的基本信息含义说明:定义了商品的基本信息组成结构:商品名,商品编号,商品单价,库存量,归属类,出厂日期,过期日期,交易清单(2)数据流名称:职工的基本信息含义说明:定义了职工的基本信息组成结构:职工姓名,职工编号,职工性别,职工年龄,职工电话,职工的职位(3)数据流名称:仓库的基本信息含义说明:定义了仓库里的有关信息组成结构:仓库号,现有库存,最大库存,最小库存,货物号等。(4)数据流名称:销售商的信息含义说明:定义了销售商的信息组成结构:销售商的姓名,地址,联系方式,以及销售记录等。(5)数据流名称:供应商的基本信息含义说明:定义了供应商的有关信息组成结构:供应商姓名,供应商地址,供应商电话和供货记录等。2.3.4数据存储描述(1)数据存储名称:商品信息表含义说明:商品的相关信息组成结构:商品编号,名称,单价,供应商姓名,生产日期,销售商姓名,所存仓库号,现有量。说明:销售商姓名和所存仓库号具有惟一性和非空性。(2)数据存储名称:职工的信息表含义说明:超市职工的信息表组成结构:职工的编号,姓名,性别,年龄,电话,地址,职位。(3)数据存储名称:仓库信息表含义说明:仓库的有关信息组成结构:仓库号,现有库存,最大库存,最小库存,所存货物号等说明:仓库号和所存货物号具有惟一性和非空性(4)数据流名称:销售商信息含义说明:存放销售商的信息组成结构:销售商信息包括销售商姓名,销售商地址,销售商电话和销售记录等说明:销售商姓名具有惟一性和非空性(5)数据流名称:供应商信息表含义说明:存放供应商的信息组成结构:供应商信息包括供应商姓名,供应商地址,供应商电话和供货记录等说明:供应商姓名具有惟一性和非空性2.4概念结构设计2.4.1概念结构设计的方法概念设计阶段采用自底向上的方法,即自顶向下的进行需求分析,然后再自底向上的进行概念结构设计。对已经细化到无法再分的阶段逐步集成在一起,最终合成一个全局概念模式。2.4.2概念结构设计的步骤第一步是进行局部视图的设计:由于高层的数据流图只能反映系统的概貌,而中层流图能较好的反映系统中各局部应用的子系统组成。因此先逐一的设计分E-R图。第二步是进行视图的集成:各子系统的E-R图设计好之后,下一步就是要将所有的分E-R图合成一个系统的总E-R图,一般有两个方式,多个分E-R图一次集成,另一种是一次集成两个分E-R图。我想采用一次集成多个分E-R图的方式。2.4.3数据抽象与局部视图设计供货商信息实体属性图和销售商信息实体属性图分别如图所示。供货记录联系方式联系方式供货商生产厂商名称地址名称地址图1供货商基本信息实体图图2销售商信息实体图用户编号职位用户姓名商品编号商品名称地址超市用户用户性别商品用户电话密码用户年龄商品价格类别商品打折图3超市员工基本信息表图4商品信息表会员卡号姓名会员注册时间累计金额图5会员信息表编号最大库存量最小库存量仓库存放货物号现有库存量图6仓库信息表根据商品与销售员的关系可设计如下关系图:商品m销售n销售员图7销售员与商品的关系2.4.4系统E-R图用户性别用户年龄用户职位编号用户用户姓名m用户密码销售销售日期名称编号n流水号供货日期电话名称商品n供货m供应商价格n允许打折供货价格地址促销价格厂商地址nn生产m生产商厂商电话厂商名称消费金额编号最大库存量存放消费1仓库购买日期会员姓名m累计金额最小库存量存放货物号会员卡号会员注册日期图8系统E-R图2.5逻辑结构设计2.5.1E-R图向关系模型的转换(1)一个1:1联系可转换为一个独立的关系模式,可以与任意一端对应的关系模式合并;(2)一个1:n联系可以转换为独立的关系模式,也可以与n端对应的关系模式合并;(3)一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分;将实体转化为关系模式。根据图7所示的货物管理的基本E-R图,将其中的实体转化为如下关系,关系的主码用下划线标出,外码用波浪线标出。由E-R图转换成关系模式:(1)生产商(生产商名称,生产商地址,生产商电话,生产商编号)(2)供应商(供应商编号,供应商名称,供应商电话,供应商地址,供货记录)(3)仓库(仓库编号,最大库存量,最小库存量,现有库存,存放货物号)(4)商品(商品编号,商品名称,商品价格,商品类别,促销价格,是否允许促销)(5)会员(会员卡号,会员姓名,注册日期,累积金额,)(6)用户(用户编号,用户姓名,用户性别,用户年龄,用户密码,用户职位)2.5.2数据库的结构根据总体结构图设计各表的结构,其相应标的定义如下:表1生产商表字段类型长度是否主键说明k_name字符型50是生产商的名称k_address字符型50否生产商的地址k_phone字符型50否生产商的电话表2销售商表字段类型长度是否主键说明S_name字符型50是销售商的名字S_phone字符型50否销售商的电话S_address字符型50否销售商的地址S_record字符型50否销售记录表3供应商表字段类型长度是否主键说明p_name字符型50是供应商的名字p_phone字符型50否供应商的电话p_address字符型50否供应商的地址p_record字符型50否供应记录表4商品表字段类型长度是否主键说明g_name字符型50否名称g_id字符型50是商品编号p_name字符型50否供应商名称k_name字符型50否生产商名称W_id字符型50否所入仓库号xianyoukucun字符型50否现有库存表5用户表字段类型长度是否主键说明m_name字符型50否用户姓名m_sex字符型50否用户性别m_age数值型50否用户年龄m_secret字符型50否用户密码m_id字符型50是用户编号m_position字符型50否用户职位表6会员表字段类型长度是否主键说明h_name字符型50否会员姓名h_id字符型50是会员卡号h_date字符型50否注册日期leijijine字符型50否累计金额2.5.3创建基本表在实际设计中最常用的存取方法是索引法,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索的列上建立索引;在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。才能充分利用索引的作用避免因索引引起的负面作用。首先在数据库中建立一个货物管理系统数据库,然后分别建立各个子表,为提高查询速度,再为各个表建立索引。生成的主要代码如下(1)创建表(2)创建视图(3)查询生产商的名称和电话(4)查询会员卡号、注册日期和姓名(5)查询销售商的销售记录、电话和名称3.课程设计总结我们用sql语言以及数据库做了一个连锁店管理系统,分别实现了连锁店管理系统的添加商店、职工、商品信息,删除商店、职工、商品信息、修改商店、职工、商品信息退出等
本文标题:数据库-超市收银系统课程设计
链接地址:https://www.777doc.com/doc-4290641 .html