在MySQL中存储负数日期之前要考虑什么?

时间:2009-07-14 01:52:06

标签: mysql date storage bc

我正在开展一个项目,这将要求我允许用户在数据库中存储负数日期。这些日期有可能跨越公元前几千年,并且可能延迟到“今天”。我曾参与许多存储日期的项目,但它们都是相对较新的日期,并且没有一个是负面的(BC)。

在处理此类数据时,我应该考虑哪些类型的事项?我完全了解历史上发生的许多日历变化,但我将使用现代日历,而不是过多地担心转换。但是,任何有关转换的信息都会受到高度赞赏,因为它是一个非常相关的主题,而且我在学术上感兴趣,但在此项目中不需要关注。

更新:我将成为故事YYYY-MM-DD(不需要该格式)

2 个答案:

答案 0 :(得分:2)

您的存储空间需要多精确?是年,日,或小时/分钟。 如果您只查看天或年,那么您可能不需要实际存储日期,而是从0日期开始+/-日/年的偏移

答案 1 :(得分:0)

我有类似的问题,我想继续在数据库中的日期字段中继,以允许我使用日期范围搜索,精确度达到历史值的一天。 (我的DB包括出生日期和罗马皇帝的日期......)

解决方案是在将所有日期添加到数据库之前向所有日期添加常量(例如:3000),并在向用户显示查询结果之前减去相同的数字。

如果DB中已经有一些日期值,请记住使用新的const数更新exiting值。

相关问题