首页 新闻 赞助 找找看

Winform连锁超市商品档案数据库设计问题求思路。。

0
悬赏园豆:5 [已解决问题] 解决于 2013-01-12 20:52

t_bi_Goods表:

商品编号
商品名称
。。。

t_bi_BranchGoods
分店编号,商品编号,成本价,库存数量,零售价,配送价,最低售价,最低库存,最高库存。。。

说明:商品编号,品名 规格 单位。。 等等是通用的,这些所有分店都通用的字段放在t_bi_Goods表中。


由于零售价各分店不同,一般情况会在新增一个商品时,在t_bi_BranchGoods表中会增加多条记录,如:有5个分店就要加5条记录,这5条记录可能都是重复的,

分店编号  商品编号  零售价
001    01000001  1.5
002    01000001  1.5
003    01000001  1.5

所以在t_bi_Goods中增加一个字段:零售价,在新增商品档案的时候只要在t_bi_Goods中增加一条记录,如果某个分店对某个商品的零售价不同了(做了分店调价单,在t_bi_BranchGoods中会去新增或更新一条记录),取价时首先判断分店商品档案表中对应的商品零售价是否为空,如果为空则取t_bi_Goods的零售价,如果不为空则取t_bi_BranchGoods中的零售价。这样大大减小了t_bi_BranchGoods的条目数量。

 

问题:自我感觉这样设计还可以,不知道大家怎么看,同时有问题出来了。t_bi_BranchGoods是分店商品档案表,这里面不只零售价这一个字段,还有诸如:成本价 库存数量 最低库存 最高库存 。这些字段在多数情况下 每个分店对应的值肯定不一样,这样以来又回到老问题了 t_bi_BranchGoods的条目数量又多了,这些字段不能跟零售价一样放在t_bi_Goods表中去,这里可能会形成这样的记录

t_bi_Goods
商品编号    品名     零售价 单位。。。。
01000001   某某商品    2  包

t_bi_Goods
分店编号  商品编号    库存单价  库存数量  零售价  
001    01000001     0.8   10     1.5   
002    01000001     0.7   30     null
003    01000001     0.9   0       1.8 

注意这里的分店002在销售时因为t_bi_BranchGoods中对应的零售价为null所以会取t_bi_Goods中的零售价“2”

这样一来基本上条目数还是=分店数量*商品种类数量了。。

也考虑过把商品对应分店容易出现不一样的字段:如 每个分点对应同一个商品 库存数量 库存成本 配送价不一样,把这些字段单独提出来 做一张表,把分店对应商品出现不一样的几率小的字段如:零售价 放在一张表中。。分开放。

到底该怎么做 纠结了~!忘走过这条路的人指点指点~!      

变形精怪的主页 变形精怪 | 初学一级 | 园豆:5
提问于:2012-10-20 12:54
< >
分享
最佳答案
0

每个字段一个表

变形精怪 | 初学一级 |园豆:5 | 2013-01-12 20:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册