storing timezone information in mysql database
在MySQL数据库中存储时区信息的最佳方法是什么?我没有任何关于时间的信息,只有时区,例如:+02.00,-03.00等你认为varchar(6)是正确的吗?
- 谢谢,我会读这个的。很抱歉我之前没找到它。
- 你没有时区。您有时区偏移。偏移通常在隔离时不起作用。请阅读"时区!=offset"在时区标记wiki中。
VARCHAR(6)很好,但就我个人而言,我会用签名的SMALLINT来存储偏移量(几分钟)。
这样,您可以存储从-32768到32767的数字。
如果只想存储小时数偏移量,也可以将其存储为TINYINT。(从-128到127)
一切都取决于你,但是以东十一〔七〕是为你工作的。
也适用于存储时区。其他与日期相关的数据类型如下
数据类型
1-EDCOX1〔8〕
2- timestamp
3-date。
4-datetime。
- decimal不是最佳的,因为它允许您存储例如2.9,您不会将其视为时间偏移。
- 它允许您像WISE一样存储示例值(2.90)
- 我知道,但不应该。这会破坏合同的。
- 怎么会违反合同?
- @史蒂夫,这取决于你,这不是一个MySQL的责任来处理这些问题,我只是建议他存储时区类的价值观。
- 我认为这是存储信息的最佳方法,因为我们可以在查询中使用它,这比varchar类型更容易