2010-01-14 95 views
4

我正在編寫一個多線程程序,需要能夠檢查一行是否需要更新並採取相應措施。將MYSQL時間戳轉換爲time_t

我在使用MySql的內置日期/時間函數時遇到問題,因此決定在表中將整個「lastupdate」時間戳存儲起來。但是,我在將此時間戳轉換爲time_t時遇到問題,因此我可以使用時間函數。

任何幫助,非常感謝。

+0

你作出有關的名稱錯誤'轉換到MYSQL_ROW代替time_t'的'轉換時間戳time_t' – kjagiello 2010-01-14 20:48:55

回答

7

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;

4

嘗試FROM_UNIXTIME和TO_UNIXTIME,並將日期保留爲數據庫中的日期。