当前位置:文档之家› 《超市管理系统》数据库设计

《超市管理系统》数据库设计

数据库原理及应用实践报告学号姓名班级2012.6内容要求:1 数据库功能描述超市管理系统是一个超市不可缺少的部分,它的内容对于超市的决策者和管理者来说都至关重要,所以超市管理系统应该能够为用户提供充足的信息和快捷的销售,查询手段。

但一直以来人们使用传统人工的方式管理文件信息,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

超市销售管理系统是为帮助企业有效提高销售管理而开发的。

该数据库包括商品、职员、销售信息、仓库等模块,并提供了查询、修改、添加、删除等功能。

销售管理系统能简化企业在销售管理方面的复杂性,和减少在管理上的庞大开销。

随着计算机行业的飞速发展,人类已经进入;了信息时代,社会中的各个单位、部门也陆续开始使用软件化的管理模式,由于他具有方便、准确、快速、灵活的特点,使得在管理上实现了自动化、一体化、多元化的目标,迅速准确地完成各种工作,大大的提高了企业的销售管理效率。

2 数据库设计2.1 系统需求分析顶层图0层仓库管理层销售管理层人事管理层(1) 商品清单说明:此表存放商品信息(2)员工清单说明:此表存放员工信息(3)会员清单说明:此表存放会员信息(4)供应清单说明:此表存放供应采购商品信息(5)销售清单说明:此表存放销售商品信息(6)摆放清单说明:此表存放货架摆放信息(7)打折清单说明:此表存放商品打折信息(8)说明此表存放员工直属信息(9)供应商清单说明:此表存放供应商信息(10)货架清单说明:此表存放货架分布及负责人信息(11)仓库清单说明:此表存放仓库信息(12)收银台清单说明此表存放收银台信息(13)折扣清单说明此表存放商品折扣信息(14)部门清单说明此表存放部门信息(15)任职清单说明:此表存放员工任职信息文件条目(1)文件名:商品清单组成:{商品号+仓库号+存量+生产日期+保质日期+基础售价+进价}组织:按商品编号递增排列(2)文件名:员工清单组成:{职工号+姓名+性别+职称+年龄+工资+电话}组织:按职工编号递增排列(3)文件名:会员清单组成:{会员号+姓名+身份证号+积分+消费金额+余额}组织:按会员号递增排列(4)文件名:仓库清单组成:{仓库号号+地址+员工号}组织:按仓库号递增排列(5)文件名:销售清单组成:{商品号+收银台号+日期+数量+会员号}组织:按收银台号递增排列(6)文件名:供应商清单组成:{供应商号+供应商名称+电话}组织:按供应商号递增排列(7)文件名:部门清单组成:{部门名称+人数+主管}组织:按部门名称排序加工说明(1)加工名:1:查询加工逻辑:根据要查询的库存信息,检索出库存信息明细表输入流:库存信息查询,发出库存信息请求输出流:库存信息清单,进货信息请求(2)加工名:1:更新根据进货信息或销售信息更新库存信息输入流:已进货信息,销售信息输出流:发出库存检索请求(3)加工名:2:查询根据要查询的销售信息,检索出销售信息明细表输入流:销售信息查询输出流:销售清单,销售单(4)加工名:2:更新加工逻辑:根据销售信息更细销售清单输入流:前台销售信息,库存信息输出流:更新库存清单(5)加工名:3:查询加工逻辑:根据要查询的进货信息,检索出进货信息明细表输入流:进货信息查询,发出进货/采购清单查询输出流:库存信息清单,已进货信息,新供货商信息,进货单信息清单,采购单,进货信息请求,进货/采购清单检索结果(6)加工名:3:更新加工逻辑:根据进货信息更新进货清单输入流:进货信息请求,进货单输出流:发出进货/采购清单查询(7)加工名:4:查询加工逻辑:根据输入要查询的员工信息或供货商信息,检索出相应的结果输入流:员工信息查询,供货商信息查询,发出员工/供货商清单查询输出流:已有供货商信息,供货商信息清单,员工信息清单,员工/供货商清单检索结果(8)加工名:4:更新加工逻辑:根据输入的员工信息或新供货商信息更新相应的员工清单或供货商清单输入流:员工信息,新供货商信息清单,员工/供货商清单检索结果2.2 数据库概念结构设计全局E-R图2.3 数据库逻辑结构设计商品(商品号,名称,进价,保质期,生产日期,基础售价)摆放(商品号,货架号,数量)供应(商品,供应商,数量,日期,金额)销售(商品号,收银台号,日期,数量,会员)存贮(商品号,仓库号,数量)打折(商品号,折扣,售价)员工(员工号,姓名,性别,职称,年龄,工资,电话)打理(员工号,货架,时间)管理(员工号,仓库)职守(员工号,收银台号,时间段)直属(员工号,部门)采购(员工号,供应商,日期)3 数据库实施3.1 数据库架构图3.2 数据表生成脚本初始数据录入脚本create table 商品(商品号char(13) constraint 商品_prim primary key,名称char(10),进价smallmoney,基础售价smallmoney,保质期smalldatetime,生产日期smalldatetime,仓库号char(10) constraint 仓库_商品_fore foreign key references 仓库(仓库号),存量char(10),)create table 员工(员工号char(13) constraint 员工_prim primary key,姓名char(10),性别char(2) constraint 员工_性别_chk check(性别='男'or 性别='女'),职称char(10),年龄char(2) constraint 员工_年龄_chk check(年龄>=16 and 年龄<=60),工资smallmoney,电话char(11),)create table 会员(会员号char(13) constraint 会员_prim primary key,姓名char(10),身份证号char(18),积分int,消费金额smallmoney,余额smallmoney,)create table 供应(商品号char(13) constraint 商品_供应_fore foreign key references 商品(商品号),供应商号char(20) constraint 供应商_供应_fore foreign key references 供应商(供应商号),数量int,单价smallmoney,日期smalldatetime,员工号char(13) constraint 员工_供应_fore foreign key references 员工(员工号),constraint 供应_prim primary key(商品号,员工号),)create table 销售(商品号char(13) constraint 商品_销售_fore foreign key references 商品(商品号),收银台号char(10) constraint 收银台_销售_fore foreign key references 收银台(收银台号),日期smalldatetime,数量int,会员号char(13) constraint 会员号_销售_fore foreign key references会员(会员号),constraint 销售_prim primary key(商品号,收银台号),)create table 摆放(商品号char(13) constraint 商品_摆放_fore foreign key references 商品(商品号),货架号char(8) constraint 货架_摆放_fore foreign key references 货架(货架号),数量int,constraint 摆放_prim primary key(商品号,货架号),)create table 打折(商品号char(13) constraint 商品_打折_fore foreign key references 商品(商品号),折扣号char(8) constraint 折扣_打折_fore foreign key references 折扣(折扣号),售价smallmoney,constraint 打折_prim primary key(商品号,折扣号),)create table 值守(员工号char(13) constraint 员工_值守_fore foreign key references 员工(员工号),收银台号char(10) constraint 收银台_值守_fore foreign key references 收银台(收银台号),时间段char(20),constraint 值守_prim primary key(员工号,收银台号),)create table 供应商(供应商号char(20) constraint 供应商_prim primary key,供应商名称char(20),电话char(11),)create table 货架(货架号char(8) constraint 货架_prim primary key,地址char(20),员工号char(13) constraint 员工_货架_fore foreign key references 员工(员工号),)create table 仓库(仓库号char(10) constraint 仓库_prim primary key,地址char(20),员工号char(13) constraint 员工_仓库_fore foreign key references 员工(员工号),)create table 收银台(收银台号char(10) constraint 收银台_prim primary key,台内现金smallmoney,入台现金smallmoney,)create table 折扣(折扣号char(8) constraint 折扣_prim primary key,折扣额度smallmoney,)create table 部门(部门名称char(10) constraint 部门_prim primary key,人数int,主管char(13) constraint 主管_部门_fore foreign key references 员工(员工号), )create table 任职(员工号char(13) constraint 员工_任职_fore foreign key references 员工(员工号),部门char(10) constraint 部门_任职_fore foreign key references 部门(部门名称), constraint 任职_prim primary key(员工号,部门),)3.3始数据录入脚本员工表:insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0001','张三','男','普通员工','25',4500,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0002','李四','男','普通员工','28',4500,'54')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0003','王五','女','普通员工','30',4500,'58')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0004','张明','男','普通员工','26',4500,'95')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0005','马佳','女','普通员工','32',4500,'98')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0006','王丽','女','管理员','36',5000,'85')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0007','田文','男','管理员','35',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话)values('0008','杨哲','男','管理员','34',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话) values('0009','玛丽','女','管理员','38',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话) values('0010','张伟','男','管理员','32',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话) values('0011','张宁','男','管理员','31',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话) values('0012','李贵','女','管理员','39',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话) values('0013','高雄','男','管理员','32',5000,'55')insert into 员工(员工号,姓名,性别,职称,年龄,工资,电话) values('0014','李明伟','男','管理员','41',5000,'55')仓库:insert into 仓库values('01','A区5号','0006')insert into 仓库values('02','A区8号','0007')insert into 仓库values('03','B区3号','0010')insert into 仓库values('04','B区1号','0011')商品:insert into 商品values('11111','奶粉',200,300,'2011/05/19','2013/05/19','01','10t')insert into 商品values('11112','洗发水',30,60,'2011/11/23','2015/11/19','02','500')insert into 商品values('11113','干红',200,500,'2011/01/20','2013/01/19','03','100t')insert into 商品values('11114','刀具',200,360,'2011/05/19','2019/05/19','04','600')insert into 商品values('11115','干电池',5,10,'2011/06/21','2014/05/19','02','90t')供应商:insert into 供应商values('4321','吉祥食品公司','66')insert into 供应商values('4322','红星酒厂','66')insert into 供应商values('4323','清扬日用品公司','66')insert into 供应商values('4324','士达工业','66')insert into 供应商values('4325','完美刀具公司','66')供应:insert into 供应values('11111','4321','20t',200,'2011/7/20','0006')insert into 供应values('11112','4323','500',30,'2011/12/2','0007')insert into 供应values('11113','4322','100t',200,'2011/5/20','0010')insert into 供应values('11114','4325','600',200,'2011/7/20','0011')insert into 供应values('11115','4324','90t',5,'2011/8/20','0008')会员:insert into 会员values('00001','张三','22','500',800,200)insert into 会员values('00002','李四','33','3000',430,500)insert into 会员values('00003','王五','55','460',504,256)insert into 会员values('00004','马奇','66','4512',120,39)insert into 会员values('00005','赵夏','77','8000',124,6981)部门:insert into 部门values('销售部','5','0012')insert into 部门values('采购部','5','0011')insert into 部门values('后勤部','4','0006')insert into 部门values('人事部','5','0009')收银台:insert into 收银台values('01',5000,3020)insert into 收银台values('02',4200,2301)insert into 收银台values('03',3250,2310)insert into 收银台values('04',1289,368)insert into 收银台values('05',1563,4820)货架:insert into 货架values('01','A区1号','0010')insert into 货架values('02','A区2号','0011')insert into 货架values('03','B区1号','0012')insert into 货架values('04','B区2号','0013')insert into 货架values('05','C区1号','0014')折扣insert into 折扣values('01',10)insert into 折扣values('02',20)insert into 折扣values('03',50)打折:insert into 打折values('11111','02',280)insert into 打折values('11113','03',450)insert into 打折values('11114','01',350)insert into 打折values('11112','01',50)任职:insert into 任职values('0001','销售部')insert into 任职values('0002','销售部')insert into 任职values('0003','销售部') insert into 任职values('0004','销售部')insert into 任职values('0005','销售部')insert into 任职values('0006','后勤部')insert into 任职values('0007','后勤部')insert into 任职values('0010','后勤部')insert into 任职values('0011','后勤部')insert into 任职values('0006','采购部')insert into 任职values('0007','采购部')insert into 任职values('0010','采购部')insert into 任职values('0011','采购部')insert into 任职values('0008','采购部')insert into 任职values('0006','采购部')insert into 任职values('0009','人事部')insert into 任职values('0012','人事部')insert into 任职values('0013','人事部')values('0014','人事部')insert into 任职values('0001','人事部')值守:insert into 值守values('0001','01','8点-12点')insert into 值守values('0002','02','8点-12点')insert into 值守values('0003','03','8点-12点')insert into 值守values('0004','04','8点-12点')insert into 值守values('0005','05','8点-12点')insert into 值守values('0001','05','13点-20点')insert into 值守values('0002','04','13点-20点')insert into 值守values('0003','02','13点-20点')insert into 值守values('0004','01','13点-20点')insert into 值守values('0005','03','13点-20点')摆放:insert into 摆放values('11111','01','100')insert into 摆放values('11112','03','200')values('11113','02','50')insert into 摆放values('11114','05','20')insert into 摆放values('11115','04','500')insert into 摆放values('11113','01','20')销售:insert into 销售values('11111','01','2012/5/23','3','00001')insert into 销售values('11111','02','2012/5/23','1','00005')insert into 销售values('11111','03','2012/5/23','1','00002')insert into 销售values('11111','04','2012/5/23','2','00004')insert into 销售values('11112','01','2012/5/23','1','00003')insert into 销售values('11112','02','2012/5/23','2','00001')insert into 销售values('11112','05','2012/5/23','2','00003')insert into 销售values('11113','03','2012/5/23','2','00005')insert into 销售values('11114','05','2012/5/23','2','00004')insert into 销售values('11115','02','2012/5/23','1','00002') 4相关问题(0)部分测试:查询员工工资Select 员工号,姓名,工资* from员工whrer(员工号=’0001’)查询销售记录Select * from打折,销售whrere(打折.商品号=销售.商品号)查询供应商的商品存量Select 仓库号,库存from供应商,商品whrere(供应商.商品号=商品.商品号)and(商品号=‘11115’)(1)建立合适索引及应该注意问题索引必须在录入数据之后建立索引CREATE CLUSTER INDEX <引索名字>ON <表名>超市商品过多,需要建立聚集索引CREATE UNIQNUE INDEX <引索名字>ON <表名>部门人员建立唯一索引(2)建立合适视图管理员拥有最高权限,可查询所有表商品表,仓库表,部门表可被员工查询全部视图员工表可被员工查询自己的所有信息,查询其他人除了工资等隐私的其他信息会员表可被会员查询所有信息(3)数据库系统备份与恢复在管理员上传,修改时,同时复制一份脚本传输到另外一张盘(4)系统崩溃恢复从留下来的脚本还原数据(5)硬件损坏。

相关主题