您的位置首页快问快答

MySql数据库怎样把Long时间与日期相互转换

MySql数据库怎样把Long时间与日期相互转换

的有关信息介绍如下:

MySql数据库怎样把Long时间与日期相互转换

今天遇到一个有关时间格式的问题,描述如下: 要将Long型的数据(时间戳)插入到数据库表中字段类型为Timestamp的字段中,出现无法转换的错误。

方法/步骤

1

查找原因发现Long型的数据并不能直接插入成日期类型,即使是Timestamp类型的字段。如果使用会出现如下报错——

2

可以采用Mysql中的函数解决:FROM_UNIXTIME(),这是时间戳转化为日期的函数。sql语句测试:(SELECT FROM_UNIXTIME(1499409740)),当然函数中也可以添加参数,例如:'%Y %D %M %h:%i:%s %x'。

3

使用UNIX_TIMESTAMP(),这是日期格式转化为时间戳的函数。sql语句测试:SELECT UNIX_TIMESTAMP('2017-07-07 15:58:25')

4

在使用了函数之后,问题成功解决。但是又产生了新的问题,将正确的时间戳保存到数据库之后,却发现时间显示不正确,比正确时间少了整整8个小时。

5

原来是数据库时区配置问题,数据库所配置的时区可能还是UTC(英国)的时区,北京时区需要加上8小时,因此显示不正确。

END