颜色,尺寸,数量,价格这几个怎么设计数据库呢?
卖的是衣服产品
商品表
ProductID Name AttCatID
1 牛仔裤 1
属性类型表
AttCatID Name
1 裤子
2 上衣
属性值表
AttVaID AttCatID Name
1 1 尺寸
2 2 颜色
下表
ID ProductID AttVaID AttrValue Quantity Price
1 1 1 27 30 40
1 1 1 28 40 50
1 2 1 黄色 50 60
请问如何做到同一种商品不同颜色不用尺寸的价格不同,列在同一张表中比如:
1商品27码黄色有30件,每件30元
1商品28码蓝色有40件,每件40元
[解决办法]
方案一:每个属性都属性分开
商品名称(ProductID int,Name nvarchar(100))
尺寸表(SizeID int,name nvarchar(100))
尺寸表(ColorID int,name nvarchar(100))
商品表(ProductID int,SizeID int,ColorID int,qty int,price money,remarks nvarchar(500))
方案二:基本属性做个大类(属性类型),每个大类下面又分明细(基本信息表)
商品名称(ProductID int,Name nvarchar(100))
属性类型(TypeID int,TypeName varhcar(20))
基本信息表(ID int,TypeID int,ItemNo nvarchar(20),ItemName nvarchar(50))
商品表(ProductID int,ItemNo nvarchar(20),qty int,price money,remarks nvarchar(500))
这两种方法都可以,就看你个人习惯,节省开发可以用第二种方法