求助:看看我的进销存系统的数据库设计及出库处理
21KM 2005-07-09 10:15:59 第一次做进销存系统,没什么经验,请高手指点一二!
主要有以下几个表:
进货表(库存表):
进货单号、
品名、
商品类别
供货商代码
进货件数量、进货零头数(如:5瓶)、
赠送数量(也分件和零头)、
进货价格
进货实际件价(为了以后计算利润)
进货实际单价(为了以后计算利润)
库存件数
库存零头数
库存金额
出库表(主表):
出库单号
客户姓名
业务员姓名
司机
出库日期
金额
毛利润
出库表(从表):
出库单号
品名
商品类别
供货商代码
出库件数
出库零头数
出库件价
出库单价
进货实际件价
进货实际单价
进货单号(为退货而设计)
出库方式(销售或赠送,如果为赠送,则出库价格都为零)
客户端是用VB写的,关键在出库的处理上,近期用户反映有些商品的库存量比实际的库存量多出近百件
比如某次销售,用户选择了10个商品销售,2个商品赠送,我是这样处理出库的:
开始事务
1 首先产生出库单(在出库主表里插入一条记录)
2 插入第一个商品的出库明细
更新第一个商品的库存信息(库存件数、库存零数、库存金额)
……
插入第十个商品的出库明细
更新第十个商品的库存信息(库存件数、库存零数、库存金额)
插入第一个赠送商品的出库明细
更新第一个赠送商品的库存信息(库存件数、库存零数、库存金额)
插入第二个赠送商品的出库明细
更新第二个赠送商品的库存信息(库存件数、库存零数、库存金额)
提交事务
这样我一共做了13此的insert,和12此的update操作,是不是频繁的I/O操作影响了数据库的性能
导致库存量的错误。大家有什么好的优化方法,请高手指点!在此谢过!