征求一个数据库的设计方案!(200分)

  • 主题发起人 主题发起人 ginsong
  • 开始时间 开始时间
G

ginsong

Unregistered / Unconfirmed
GUEST, unregistred user!
公司的合同想输入电脑,用数据库的形式保存.
举例合同的明细如下:
A.colour S M L
red 50 100 50
blue 50 120 70
(s/m/l为尺码)

B. colour 100 110 120 150 160 ^^^^
grey 80 200 200 100 100^^^^^
orange 90 100 100 200 300^^^^^^^
oil 80 200 250 120 80^^^^^^^^^
像这样两种合同后应该设计怎样的表合适,既方便存储,又节省空间!
 
没看懂B表的数字是什么意思
 
A代表: 举例A
B代表:  举例B
 
100 110 120 150 160 ^^^^
表示有以上尺码100,110,120,150,160
 
一看就知道这是服装的数据,颜色和尺码两大类,对吧!
要建立商品档案表和规格库的,每条商品对应规格1(颜色)和规格2(尺码)
具体商品使用时,只调用其规格对应码就ok了
 
一条商品档案的一条记录对应规格库的多条记录,一对多的关系.看来只能这样了.
 
以下给出一种答案
表结构:
Item商品:ItemID,ItemName,ItemTypeID,ItemUnitID,ItemSpecID
ItemType商品类型:ItemTypeID,ItemTypeName...
ItemUnit商品单位:ItemUnitID,ItemUnitName...
ItemSpec商品规格:ItemSpecID,ItemColor,ItemSize...
ItemPrice商品价格:ItemID,ItemPrice
ItemWeight商品重量体积等
假如有需要加其他表。
具体使用时视情况而定。例如,你的一个商品A,Item表里的记录是
ItemID,ItemName,ItemTypeID,ItemUnitID,ItemSpecID
001 商品A A01 01 001
代表 001 商品A 衬衫 件 100尺寸红色
那么在对应的ItemType表里有记录
ItemTypeID,ItemTypeName
A01 衬衫
ItemUnit中
ItemUnitID,ItemUnitName
01 件
ItemSpec中
ItemSpecID,ItemColor,ItemSize
001 红色 100
其他类似。
也可以视应用情况,减少必要的表。
例如ItemType不用管理,就直接写在Item表中。写入衬衫或者裙子就可以了。可以去除ItemType表。
假如觉得必要,可以把颜色表分离出来
ItemColor
ItemColorID,ItemColorName...
 
技术交流QQ:136293586
 
bbscom,foxphone2003,rinsonliam,zojd1
这是一个合同,以前,我也是这么做的!!!
例子A,明细表存贮的话需要6条记录;
例子B,明细表存贮的话需要15条记录;
存的时候不方便,关键是:显示的时候很不好看;
不能显示为二维表格的开式,哪位高人,帮帮忙,出个主意啊!
 
你是说记录多吧?那就搞表吧,多搞几个表
一个ItemColor表表示颜色
ItemColor:ItemColorID,ItemColorName
一个ItemSize表表示尺寸
ItemSize:ItemSizeID,ItemSizeName
一个Item表,表示商品
Item:ItemID,ItemName,ItemColorID,ItemSizeID,Quantity,Price,...

或者再多一个规格表
ItemSpec:ItemSpecID,ItemSizeID,ItemColorID
这样商品表就可以加规格字段,省去尺寸和颜色
Item:ItemID,ItemName,ItemSpecID,Quantity,Price,...

要说明的是,你的问题是要存储空间小,所以多建表,这样就可以节省空间。
但是这样的做法,必然导致处理起来麻烦,要对应到许多的表。

现在仔细考虑下你给的数据,不是很明白。
colour S M L
red 50 100 50
blue 50 120 70
中间的数据表示什么?数量?
 
对,是数量啊!
 
1。你的合同表暂且取名为saledetail其结如下。
ID,sizegroupflag,goodsid,colorid,x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,price,box,quantity...
sizegroupflag:表示你这个货品是拿一个尺码组的。x1-x13表示尺码,再创建表单时动态的创建其标题。
货品名称 颜色 A s m l
B 240 245 250
C 110 120 130
A1001 red A 1 2 3
A1002 yello A 3 3 3
A1003 black B 2 2 2
 
你系统定义一个尺码组表,每组有13个尺码如
A s m l xl xll ...
B 240 250 255 ...
C 110 120 130...
你在增加一个表让用户可以地增加自己的尺码组。不过用户在定义时,只能从你定义好的三个尺码组中选择。在合同上显示的尺码caption是你系统定义的尺码。
这三个系统尺码可以你默认给用户,也可以在创建帐套时要用户自己决定。不过要提醒一下尽量要多一些。
 
我看了前面几位的提意,没有解决你的本意。的确不能采用二维表。
 
不管怎么样,还是谢谢大家了!
 
后退
顶部