日期:2014-05-17  浏览次数:20642 次

具有多重含义的字段,是否规范?
RT
就是有些字段在一定情况下表示某种含义,换一个情况其含义会改变,比如:
表1,卡车某次运输货物表
车次id 货物id
0 1
0 2

表2,货物表
id name value
1 笔记本 500
2 猫 20
在表2中,如果货物是笔记本,value的含义为笔记本的硬盘大小
如果货物是猫,那么value的含义为这只猫抓过多少只老鼠
笔记本不能抓老鼠,猫也不可能有硬盘大小的说法,所以他俩公用一个字段,这样的处理合适吗?
如果不合适,该用怎样处理比较合适?
(不仅限于上述结构的表)

------解决方案--------------------
表1,卡车某次运输货物表
车次id 货物id value
0 1 500
0 2 20
 
表2,货物表
id name 单位
1 笔记本 mb
2 猫 20 个
------解决方案--------------------
个人觉得不太合理,单位和数量毕竟不是一回事。
最后还是分门别类。
------解决方案--------------------
id name value1,value2
1 笔记本 500 NULL
2 猫 NULL 20
------解决方案--------------------

次id 货物id
0 1
0 2

表2,货物表
id name value unit
1 笔记本 500 1
2 猫 20 2
 
unit 单位表
id value
1 台
2 只
------解决方案--------------------
貨物描述表
id或代號 貨物名稱 規格,單位...貨物其它屬性


车次id 货物id或代號 數量
0   1 500
0   2 20 


------解决方案--------------------
最好单一的含义
------解决方案--------------------
尽量单一含义,分开定义