《超市物流数据库系统设计.doc》由会员分享,可在线阅读,更多相关《超市物流数据库系统设计.doc(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、超市物流管理系统项目数据库实验报告学 院 软件工程学院 专 业 班 级 计算机科学与技术071 组 员 虞赵俊 欧东旭 沈新杰 张国晓 俞芳青 组 长 虞赵俊 联 系 电 话 指 导 教 师 目录第1章 系统需求分析21.1 需求概述21.2 需求描述31.2.1数据流图31.2.2数据字典9第2章 系统初步设计182.1 基于PowerDesigner的数据库设计182.1.1 概念数据模型182.1.2物理数据模型222.1.3 创建表的脚本文件232.2 数据库不规范化设计举例232.2.1 不满足第二范式举例452.2.2 不满足第三范式举例462.3 基于MyEclipse的系统功能
2、界面设计482.3.1 系统功能图482.3.2 系统功能描述48第3章系统详细设计与实现513.1系统功能界面513.1.1 登录界面513.1.2 主界面513.1.3 采购单入库界面52参考文献54第1章 系统需求分析1.1 需求概述 当今时代,在社会日趋激烈的竞争中,在商品营销业也出现了各种形式,超市经营便是其中一种。超市可能拥有更多的途径销售产品,但是超市作为一个大型销售集体,其供货较难得到保证,销售人员则抱怨说采购员没有及时供应他们所需要的商品;实际上,采购员的效率过高,仓库里囤积的某些商品要很久才能卖完,商品会过期,仓库库位饱和,资金周转很慢,仓库管理员要定期进行商品进出货统计也
3、比较困难,订货单和采购单上的日期和缺料清单上的日期都不相同,长此以往,造成超市经营的管理混乱,这些情况正是大多数超市目前所面临的一个严峻的问题。目前大多数超市已经开始应用了计算机技术,销售、采购管理过程已经实现半自动化,但虽然如此,但仍还有很多是依靠手工和经验来完成的,且主要集中在业务管理层次上。为了适应日益激烈的市场竞争要求,提高业务管理的工作效率,要建立一种新的超市物流管理模式。超市物流管理系统应具有如下功能:(1) 对流动数据作及时的记录:在采购、销售管理中,借助计算机,对每一笔进货和出货进行记录,包括商品各项信息及日期,方便管理员对数据信息进行查找和修改,使整个管理具有高度的灵活性和可
4、靠性。(2) 对流动数据进行详细审核:在进行商品存库之前,对商品信息进行审核确认,提高信息的可靠性,减少数据的错误率;在提取商品时,也要对提货单进行比对审核。(3) 对库存商品进行统一管理:库存商品按编号统一管理,详细记录库存商品各项信息以及存库日期,利于仓库管理员进行商品入库、出库的调配。1.2 需求描述1.2.1数据流图:超市物流管理系统数据流图(第0层)超市物流管理系统数据流图(第一层)库存管理系统数据流图(第二层)POS收银系统数据流图(第二层)采购管理系统数据流图(第二层)销售管理系统数据流图(第二层)POS收银系统应收款数据流图(第三层)POS收银系统收银找零数据流图(第三层)1.
5、2.2数据字典1.2.2.1 数据结构销售单编号数据项数据项别名数据类型数据项含义1销售单编号sbnochar(10)唯一标识2日期sbdatedate3员工编号snochar(10)外码员工信息编号数据项数据项别名数据类型数据项含义1员工编号snochar(10)唯一标识2员工姓名snamechar(20)3性别ssexchar(5)4联系方式stelchar(20)5所在部门sdepartchar(20)6密码spwchar(20)7工资smoneymoney8家庭住址saddresschar(20)收款单编号数据项数据项别名数据类型数据项含义1收款单编号pbnochar(10)唯一标识2
6、日期pbdatedate3员工编号snochar(10)外码收款记录编号数据项数据项别名数据类型数据项含义1收款单编号pbnochar(10)唯一标识,外码2商品编号wgnochar(10)唯一标识,外码3销售量prnumint4销售单价prpricemoney发票编号数据项数据项别名数据类型数据项含义1发票编号renochar(10)唯一标识2员工编号snochar(10)外码3实收金额rerpricemoney4找零金额refpricemoney5日期redatedate发票记录编号数据项数据项别名数据类型数据项含义1发票编号renochar(10)唯一标识,外码2商品编号wgnochar
7、(10)唯一标识,外码3卖出量rrnumint4卖出单价rrpricemoney采购计划编号数据项数据项别名数据类型数据项含义1计划单编号bpnochar(10)唯一标识2计划日期bpdatedate3员工编号snochar(10)外码采购单编号数据项数据项别名数据类型数据项含义1采购单编号bbnochar(10)唯一标识2进货日期bbdatedate3员工编号snochar(10)外码库存商品信息编号数据项数据项字段名数据类型数据项含义1商品编号wgnochar(10)唯一标识2商品名称wgnamechar(20)3商品规格wgnormschar(10)4商品类型wgtypechar(10)
8、5供应商wgmanuchar(20)6库存量wgamountint销售记录编号数据项数据项别名数据类型数据项含义1商品编号wgnochar(10)唯一标识,外码2员工编号snochar(10)唯一标识,外码3销售单编号sbnochar(10)唯一标识,外码4销售量prnum5销售单价prpricemoney采购记录编号数据项数据项别名数据类型数据项含义1采购单编号bbnochar(10)唯一标识,外码2商品编号wgnochar(10)唯一标识,外码3采购量bnumint4采购单价bpricemoney缺货记录编号数据项数据项别名数据类型数据项含义1计划单编号bpnochar(10)唯一标识,外
9、码2商品编号wgnochar(10)唯一标识,外码3预计采购量planbnumint1.2.2.2 数据处理1与销售单有关的数据处理.处理过程“销售单审核”可描述如下:处理过程:销售信息核实输 入:未审核销售单输 出:已审核销售单说 明:核实销售信息,包括销售单编号、日期、员工编号等信息,建立新的销售单。.处理过程“提交销售单”可描述如下:处理过程:销售信息送入输 入:已审核销售单输 出:无说 明:外部实体输入销售信息,包括销售单编号、商品编号、商品名称、销售数量、销售金额、收银员编号等信息,建立销售信息表。.处理过程“历史销售记录查询”可描述如下:处理过程:历史销售记录查询输 入:查询条件输
10、 出:销售记录说 明:查询条件可为商品编号或员工编号,反馈内容为员工编号、销售数量、销售金额、销售单编号、商品编号等信息。2与采购单有关的数据处理.处理过程“制定订单过程”可描述如下:处理过程:制定订单输 入:库存商品信息输 出:采购信息单说 明:根据现有商品的库存量,包括商品编号、商品名称、商品存量(主要)、商品售价等信息,制定建立采购信息表。.处理过程“库存商品的增加”可描述如下:处理过程:库存商品增加输 入:核实后的采购单信息输 出:现有的商品库存量说 明:核实采购单信息之后,包括商品编号、商品名称、采购数量等信息,建立新的商品库存信息表。.处理过程“采购记录利用”可描述如下:(1)处理
11、过程:采购记录查看输 入:采购信息输 出:满足条件的采购记录单说 明:根据输入的采购信息输出采购信息记录单,包括采购时间、采购商品编号、采购商品数量、采购商品价格等信息。(2)处理过程:采购记录增加输 入:核实并执行的采购单输 出:采购记录单说 明:根据核实并执行的采购单信息记录采购时间、采购商品编号、采购商品数量、采购商品价格等信息。第2章 系统初步设计2.1 基于PowerDesigner的数据库设计2.1.1 概念数据模型(1) 由子系统设计E-R图POS收银子系统图2-11 POS收银子系统E-R图 销售管理子系统图2-12 销售管理子系统E-R图 采购管理子系统图2-13 采购管理子
12、系统E-R图仓库商品管理子系统图2-14 库存管理子系统E-R图(1) 设计总E-R图超市物流管理系统E-R图2.1.2物理数据模型超市物流管理系统物理图2.1.3 创建表的脚本文件if exists (select 1 from sysindexes where id = object_id(buy_bill) and name = 制定2_FK and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and
13、indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 0 and indid 255) drop index 采购记录.采购记录_FKgoif exists (select 1 from sysobjects where id = object_id(采购记录) and type = U) drop table 采购记录go/*=*/* Table: buy_bill */*=*/create table buy_bill ( bbno char(10) not null, sno char(10) null, bb
14、date datetime null, constraint PK_BUY_BILL primary key nonclustered (bbno)go/*=*/* Index: 制定2_FK */*=*/create index 制定2_FK on buy_bill (sno ASC)go/*=*/* Table: buy_plan */*=*/create table buy_plan ( bpno char(10) not null, sno char(10) null, bpdate datetime null, constraint PK_BUY_PLAN primary key n
15、onclustered (bpno)go/*=*/* Index: 制定1_FK */*=*/create index 制定1_FK on buy_plan (sno ASC)go/*=*/* Table: out_rec */*=*/create table out_rec ( bpno char(10) not null, wgno char(10) not null, planbnum int null, constraint PK_OUT_REC primary key (bpno, wgno)go/*=*/* Index: out_rec_FK */*=*/create index
16、out_rec_FK on out_rec (bpno ASC)go/*=*/* Index: out_rec2_FK */*=*/create index out_rec2_FK on out_rec (wgno ASC)go/*=*/* Table: pay_bill */*=*/create table pay_bill ( pbno char(10) not null, sno char(10) null, pbdate datetime null, constraint PK_PAY_BILL primary key nonclustered (pbno)go/*=*/* Index
17、: 出示2_FK */*=*/create index 出示2_FK on pay_bill (sno ASC)go/*=*/* Table: payl_record */*=*/create table payl_record ( pbno char(10) not null, wgno char(10) not null, prnum int null, prprice money null, constraint PK_PAYL_RECORD primary key (pbno, wgno)go/*=*/* Index: payl_record_FK */*=*/create index payl_record_FK on payl_record (pbno ASC)go/*=*/* Index: payl_record2_FK */*=*/create index payl_record2_FK on payl_record (wgno ASC)go/*=*/* Table: receipt */*=*/creat
限制150内