我有这个网址在我的意大利网站上设置连接,但是,当我尝试从网站执行一些插入操作时,日期仍然不正确。 (应该是例如:01:24,但它是02:24)
jdbc.url=jdbc:mysql://sql.example.com/database?autoReconnect=true&characterEncoding=UTF-8&sessionVariables=time_zone='Europe/Rome'
我是否需要添加任何其他参数才能使其正常工作? 是否有所有时区的完整列表?
答案 0 :(得分:5)
抱歉,我对你的直接问题没有答案。但是我可以建议一些值得考虑的事情,这样可以完全避免数据库中的所有时区问题。如果可能,我建议只使用BIGINT
字段来存储Java日期。您只需存储自纪元以来毫秒数的long
,例如来自System.currentTimeMillis()
或Date.getTime()
。
然后,总是用Java来管理日期的时区,这很好地使用了基于纪元的数字。它确实使得直接查询数据库以获取Java之外的日期变得更加复杂,但是它并不太难并且值得IMO:
SELECT FROM_UNIXTIME(date_field / 1000) FROM table;
答案 1 :(得分:1)
Wikipedia中有一个“tz”时区名称列表。