将MYSQL时间戳转换为time_t

将MYSQL时间戳转换为time_t

问题描述:

我正在编写一个多线程程序,需要能够检查一行是否需要更新并采取相应措施。将MYSQL时间戳转换为time_t

我在使用MySql的内置日期/时间函数时遇到问题,因此决定在表中将整个“lastupdate”时间戳存储起来。但是,我在将此时间戳转换为time_t时遇到问题,因此我可以使用时间函数。

任何帮助,非常感谢。

+0

你作出有关的名称错误'转换到MYSQL_ROW代替time_t'的'转换时间戳time_t' – kjagiello 2010-01-14 20:48:55

MySql timestamp数据类型可以以YYYYMMDDHHMMSS,YYMMDDHHMMSS,YYYYMMDD或YYMMDD格式存储为数字。

在Unix和POSIX兼容的系统,time_t通常代表自Unix纪元开始的秒数的整数:1月1日午夜UTC,1970年

在MySQL中,你可以使用UNIX_TIMESTAMP()FROM_UNIXTIME()函数在TIMESTAMP值和Unix时间戳值之间进行转换。

查询示例:SELECT Unix_Timestamp(Date_Entered) FROM Foo;

尝试FROM_UNIXTIME和TO_UNIXTIME,并将日期保留为数据库中的日期。