这个糟糕的数据库设计?

时间:2012-04-12 16:08:39

标签: database

我有一个存储所提供服务的表,另一个是服务的子服务,并以价格,间隔(1小时,1米等)存储实际服务。
问题是每个儿童服务都有一些相关的上限(50~) 所以我认为service_cap(child_service_id,cap_id,value)可行。问题是值可能是数字(0-)或“无限制”或(可用,不可用,视可用性而定)。

我认为我可以用负值表示这些状态,否则它将是一个数字......

有些人告诉我,这是EAV而且很糟糕,但我想不出另类......

1 个答案:

答案 0 :(得分:0)

您可以在cap_value表中添加两列,例如cap_typeservice_cap(选择您自己更好的名称)。如果服务可用,不可用,主题或无限制,cap_type可以处理逻辑。您可以拥有更多状态选项。然后,您可以将cap_value限制为仅具有特定interval_types的值。

因此,无限制且不可用应该具有cap_type的空/空值。其他人可以存储所需的上限。

相关问题