1、 商店进销存管理系统 数据库设计说明书 拟制人 吴静 杜茂坤 审核人 批准人_ 【2013年1月18日星期五】数据库设计说明书1.引言1.1编写目的随着计算机技术的高速发展,人们对计算机的依赖性越来越强,特别是用计算机开发的数据库以及数据管理系统在生活应用中表现得更为突出。随着超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市时时刻刻都需要对商品各种信息进行统计分析。作为国内市场的一些中小型商店,它们在信息化过程中的步伐要落后于大型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法。因此,针对中小型商店开
2、发一个商店进销存管理系统是非常必要的。通过使用商店进销存管理系统,使商店的管理工作系统化、规范化、自动化、简易化、智能化,从而达到提高超市进销存管理效率的目的。商店进销存管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立数据一致性和完整性强,数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。系统实现了商品信息管理,商品进货操作,商品出货操作,库存信息查询等功能。本文详细地介绍了软件的开发环境、数据库的设计、各个模块的设计和实现及具体界面的设计和功能。1.2背景a. 待开发软件系统的名称: 商店进销存管理系统b. 本项目的任务提出者:
3、 石河子大学c. 本项目开发者: 吴静,杜茂坤d. 本项目用户: 商店员工1.3 参考资料1 Mark Priestley.面向对象设计uml实践 M.龚晓庆,卞雷等译.北京:清华大学出版社,2005.2 郑人杰,马素霞,殷人昆.软件工程概论 M.北京:机械工业出版社,2011.3 王珊,萨师煊.数据库系统概论概论 M.北京:高等教育出版社,2005.4 卢瀚,王春斌.java web开发实战1200例M.北京:清华大学出版社,2011.2.结构设计2.1 界面设计整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成进货、销售、库存管理的全过程。系统的登录界面如图2.1。图2.1
4、系统登陆界面系统首页如图2.2所示。图2.2系统首页商品添加页面如图2.3所示。图2.3商品添加页面商品查询界面如图2.4所示。图2.4商品查询界面密码修改界面如图2.5所示。图2.5密码修改界面2.2 逻辑结构设计(1)局部E-R图商品及商品属性之间存在属于的关系,如图2.6所示。图2.6商品、供应商及之间存在着供应入库的关系,E-R图如图2.7所示。图2.7商品和仓库之间存在图2.8所示关系。图2.8商品和顾客之间存在销售的关系,如图2.9所示。图2.9(2)全局E-R图图2.102.3关系模型设计商品类型(类型号,类型名,说明)商品(商品号,商品名,类型号,单价,单位,规格,说明)供应商
5、(供应商号,供应商全称,地址,联系人,电话,电子邮箱,开户银行,开户账号)顾客(顾客号,顾客全称,地址,联系人,电话,电子邮箱,开户银行,开户账号)业务员(业务员号,工资,登陆名,密码)仓库(仓库号,面积,单位)入库单(供应单号,供应商号,业务员号,应付,实付,未付,是否付清,日期)入库详单(商品号,仓库号,供应单号,数量,金额)销售单(流水号,业务员,应收,实收,未收,是否结清,销售日期)销售详单(商品号,流水号,数量,金额)转仓详单(转仓单号,商品号,转出仓库,转入仓库)库存(仓库号,商品号,库存量)2.4 关系图(1) 入库管理关系图图2.11(2)销售管理关系图. 图2.12(3)转仓
6、关系图图2.132.5物理结构设计表2-1 splb(商品类别)字段名数据类型长度说明意义IDvarchar20Primary key类型号lxnamevarchar20Not null类型名memovarchar100说明表2-2 tb_brand(商品)字段名数据类型长度说明意义IDvarchar20Primary key商品号spnamevarchar20Not nul商品名splbvarchar10Foreign key类型号djmoneynot null单价dwVarchar10not null单位ggVarchar50规格memovarchar100说明表2-3 tb_ck(仓库)
7、字段名数据类型长度说明意义IDIntPrimary key仓库号ckmjFloat面积mjdwVarchar6单位memovarchar100说明表2-4 tb_supplier(供应商)字段名数据类型长度说明意义IDIntPrimary key供应商编号gysnamevarchar50Not null供应商全称addressvarchar100Not null地址Lxrvarchar50联系人lxrtellvarchar50Not null联系电话khyhvarchar50开户银行gysemailvarchar50电子信箱表2-5 tb_customer(顾客)字段名数据类型长度说明意义ID
8、IntPrimary key客户编号khnamevarchar50Not null客户全称addressvarchar100Not null地址Lxrvarchar50联系人lxrtellvarchar50Not null联系电话khyhvarchar50开户银行gysemailvarchar50电子信箱表2-6 tb_user(业务员)字段名数据类型长度说明意义IDIntPrimary key业务员编号usernameVarchar40用户名Passwordvarchar40密码表2-7 tb_rkd(入库单)字段名数据类型长度说明意义IDvarcahr20Primary key供应单号Gy
9、sIDIntForeign key供应商号czyvarcahr10操作员yfMoney应付sfMoney实付WfMoney未付whetherVarchar2是否付清rkdatedatetime验收日期表2-8 tb_ruku(供应详单)字段名数据类型长度说明意义spIDVarchar 20Foreign key商品号ckIDVarchar 20Foreign key供应单号slInt数量JeMoney金额RkidVarchar20入库单号表2-9 tb-selld(销售单)字段名数据类型长度说明意义IDVarchar20Primary key流水号kyIDIntForeign key客户号ys
10、money应收ssmoney实收WsMoney未收jqVarchar2是否结清xsdatedate销售日期表2-10 tb_sell(销售详单)字段名数据类型长度说明意义spIDVarchar10Foreign key商品号SelldVarchar20Foreign key流水号slint数量jeMoney金额表2-11 tb_zc(转仓单)字段名数据类型长度说明意义IDvarchar20主键spIDVarchar20Foreign key商品号ZcckIntForeign key转出库编号ZrckIntForeign key转入库编号表2-12 tb_kc(库存)字段名数据类型长度说明意义c
11、kIDVarchar20Foreign key仓库号spIDVarchar20Foreign key商品号kcSlint库存量kcjeMoney金额3 存储过程脚本(1)创建存储过程统计指定时间段内各种商品的进货数量create proc pro_rkslstarttime datetime,endtime datetime,spid varchar(20),totalsl int output,totalje money outputas select totalsl=sum(sl),totalje=sum(je) from tb_ruku,tb_rkd where tb_rkd.ID=tb
12、_ruku.rkd and rkdate between starttime and endtime group by spid having spid=spid(2)创建存储过程统计指定时间段内各种商品的销售数量create proc pro_xsslstarttime datetime,endtime datetime,spid varchar(20),totalsl int output ,totalje money output as select totalsl=sum(sl),totalje=sum(je) from tb_sell,tb_selld where tb_selld.
13、ID=tb_sell.selld and xsdate between starttime and endtime group by spid having spid=spid4 触发器脚本(1)当商品入库时自动增加该商品的库存量create trigger tri_sprkon tb_ruku for insertas declare oldsl int,oldje money,spid varchar(20),ckid int,ckid1 int,rksl int,rkje moneyselect ckid1=0select spid=spid,ckid=ckid,rksl=sl,rkje
14、=je from insertedselect ckid1=ckid from tb_kucun where spid=spidif rksl0beginif ckid=ckid1 beginselect oldsl=kcsl,oldje=kcje from tb_kucun where spid=spidupdate tb_kucun set kcsl=oldsl+rksl,kcje=oldje+rkje where spid=spidreturn endif ckid1=0begininsert into tb_kucun values(spid,ckid,rksl,rkje)return
15、 end end rollback transaction(2)当商品销售时自动修改各仓库的库存量create trigger tri_spxson tb_sell for insertas declare oldsl int,spid varchar(11),xssl int,oldje money,xsje moneyselect spid=spid,xssl=sl,xsje=je from insertedselect oldsl=kcsl,oldje=kcje from tb_kucun where spid=spidif xssl0 and oldslxsslbeginupdate
16、tb_kucun set kcsl=oldsl-xssl,kcje=oldje-xsje where spid=spidreturnendrollback transaction(3)当商品转仓时自动修改各仓库的库存量create trigger tri_spzcon tb_zc for insertas declare kcsl int,kcje money,zcck int,zrck int,spid varchar(20)select spid=spid,zcck=zcck,zrck=zrck from insertedselect kcsl=kcsl,kcje=kcje from tb
17、_kucun where spid=spid and ckid=zcck if kcsl0begin delete from tb_kucun where spid=spid and ckid=zcck insert into tb_kucun values(spid,zrck,kcsl,kcje)returnend rollback transaction5 数据库恢复与备份(1)数据库的完全备份backup database db_shopping to disk=E:备份数据库fullback_shopwith init (2)数据库的恢复restore database db_shop
18、pingfrom disk=E:备份数据库fullback_shopwith replace(3)数据库差异备份backup database db_shoppingto disk=E:备份数据库defback_shopwith differential(4)数据库的恢复restore database db_shoppingfrom disk=E:备份数据库defback_shopwith replace其中专业理论知识内容包括:保安理论知识、消防业务知识、职业道德、法律常识、保安礼仪、救护知识。作技能训练内容包括:岗位操作指引、勤务技能、消防技能、军事技能。二培训的及要求培训目的安全生产目
19、标责任书为了进一步落实安全生产责任制,做到“责、权、利”相结合,根据我公司2015年度安全生产目标的内容,现与财务部签订如下安全生产目标:一、目标值:1、全年人身死亡事故为零,重伤事故为零,轻伤人数为零。2、现金安全保管,不发生盗窃事故。3、每月足额提取安全生产费用,保障安全生产投入资金的到位。4、安全培训合格率为100%。二、本单位安全工作上必须做到以下内容: 1、对本单位的安全生产负直接领导责任,必须模范遵守公司的各项安全管理制度,不发布与公司安全管理制度相抵触的指令,严格履行本人的安全职责,确保安全责任制在本单位全面落实,并全力支持安全工作。 2、保证公司各项安全管理制度和管理办法在本单
20、位内全面实施,并自觉接受公司安全部门的监督和管理。 3、在确保安全的前提下组织生产,始终把安全工作放在首位,当“安全与交货期、质量”发生矛盾时,坚持安全第一的原则。 4、参加生产碰头会时,首先汇报本单位的安全生产情况和安全问题落实情况;在安排本单位生产任务时,必须安排安全工作内容,并写入记录。 5、在公司及政府的安全检查中杜绝各类违章现象。 6、组织本部门积极参加安全检查,做到有检查、有整改,记录全。 7、以身作则,不违章指挥、不违章操作。对发现的各类违章现象负有查禁的责任,同时要予以查处。 8、虚心接受员工提出的问题,杜绝不接受或盲目指挥;9、发生事故,应立即报告主管领导,按照“四不放过”的原则召开事故分析会,提出整改措施和对责任者的处理意见,并填写事故登记表,严禁隐瞒不报或降低对责任者的处罚标准。 10、必须按规定对单位员工进行培训和新员工上岗教育;11、严格执行公司安全生产十六项禁令,保证本单位所有人员不违章作业。 三、 安全奖惩: 1、对于全年实现安全目标的按照公司生产现场管理规定和工作说明书进行考核奖励;对于未实现安全目标的按照公司规定进行处罚。 2、每月接受主管领导指派人员对安全生产责任状的落