2012-04-30 46 views
0

存儲我有一個簡單的表是這樣的:Mysql的默認CURRENT_TIMESTAMP不是以24小時軍用格式

CREATE TABLE `users` (
    `id` int(11) unsigned NOT NULL AUTO_INCREMENT, 
    `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    `username` varchar(16) DEFAULT NULL, 
    `password` varchar(16) DEFAULT NULL 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

每當我插入一條記錄,所創建的字段應自動填充當前時間戳。但是,由於某些原因,我始終以12小時的格式看到插入的時間戳。當我這樣做select created from users limit 1;我會得到2012-04-30 11:34:05

當我這樣做select current_timestamp我會得到24小時格式2012-04-30 23:34:05

當我投它unix_time並要求PHP將其轉換爲PST時間,它是正確的。但是我想讓這個專欄以24小時的格式顯示,而不需要任何時間操作。誰能幫忙?

+7

這只是一個格式問題;在選擇 –

回答

3

正如米奇在上面的評論中所說的那樣,它似乎只是格式化輸出在SELECT上的問題。嘗試DATE_FORMAT

SELECT DATE_FORMAT(created, '%Y-%c-%e %H:%i:%s') FROM users 
+1

中指定所需的精確格式感謝您的提示。我剛剛意識到我不必要地在我的模型類中明確設置了默認時間戳,而且不正確的時間爲'date('Ymd h:i:s')''而不是'date('Ymd H:i:s')' –

+0

感謝評論@JamesCowhen。它解決了我的問題:) –

相關問題