如何在单个数据库列中处理多个固定值(数据库设计)

时间:2012-11-17 22:16:05

标签: database database-design

我有一张桌子可以保留航班,而且我想保留这个航班的一周中的哪几天。 没有必要约会,因为我只需要日名。

首先,我想在飞行表中有一个列,它将保留一个包含日期名称的字符串,并使用我的应用程序逻辑来解析信息。 这似乎没问题,因为当天唯一的操作就是检索它们。

问题是,我发现这不够“干净”,所以我想创建一个单独的表来保存所有7天名称和多对多(自动生成)表来保存flight_id和day_id。 / p>

尽管如此,日历表上只有7个设定值,我对第二种方法也不太确定。

我想要的是关于如何处理这个问题的其他一些意见。

  • 航班可以在一周的许多不同日期运行
  • 只需要一天的名字 - 总共7个。

对不起英语不好,如果对某些人来说这是一个微不足道的问题。我在英语和数据库方面都不是很有经验。

1 个答案:

答案 0 :(得分:0)

某些数据库支持数组。例如,PostgreSQL支持arrays

您可以将日期存储在整数数组中,并使用函数将整数转换为日期名称。您还可以使用自定义枚举类型(PostgreSQL Example)的数组。