为什么日期字段在SQLite / MySQL数据库中存储为整数?

时间:2014-04-05 10:33:38

标签: mysql sql database sqlite types

我注意到有时日期会在数据库中存储为整数而不是日期时间。为什么在我们有datetime数据类型时选择Int?

1 个答案:

答案 0 :(得分:3)

SQLite没有预留用于存储日期和/或时间的存储类。相反,SQLite的内置日期和时间函数能够将日期和时间存储为TEXT,REAL或INTEGER值。

对于其他数据库,您的印象错误。日期通常存储为Timestamp或Datetime。有时人们将UNIX时间存储定义为自00:00:00(UTC),1970-01-01以来经过的秒数。

人们倾向于使用UNIX时间,因为通常更容易进行时间计算/比较,因为您可以应用通常的数学运算来比较它们。使用Timestamp / Datetime时,您可能需要使用与时间相关的功能。

你提到的有关SQLite的内容,它没有特殊的日期时间数据类型。