2009-05-07 1 views
5

私はPHPMyAdminを使用していますが、「タイムスタンプ」というMySQLテーブルの列があります。タイプ(驚き!)はTIMESTAMPで、 '属性'ではON UPDATE CURRENT_TIMESTAMPに設定しました。MySQLタイムスタンプ - なぜすべてゼロですか?

しかし、それぞれの新しいレコードは次のようになり、タイムスタンプ取得します。

0000-00-00 00:00:00 

を私は明示的にnoneにデフォルト値を設定しているが、私は保存して見に戻ってくるとき、それはすべてゼロに設定されています上記のように。

関連するPHPレコードのページには、このクエリでヒット:

$query = "INSERT INTO `pagehit` (user_id, pageurl) 
VALUES ('" . $userid . "', '" . $pageurl . "')"; 

全部がXAMPPの下で実行されています。

私には何が欠けていますか?

+0

みんなありがとう:行のためのPHPのsintaxで

ALTER TABLE 'name_table' ADD 'name_row' TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; 

参照してください。 :) –

答えて

9

私は何をしないのですか?

あなたは更新されません:)

を使用DEFAULT CURRENT_TIMESTAMPON UPDATE CURRENT_TIMESTAMP

10

デフォルト値をCURRENT_TIMESTAMPに設定して、属性に設定することをお試しください。

MySQL Reference

+0

秒未満です! :) – Quassnoi

4

と一緒にあなたのtimestamp列が唯一の挿入時間をキャプチャした場合、それがためであるならば、そうでない場合にのみ

timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP 

を使用変更時間は次のように使用します。

私の場合は
1

は、このように動作します:phpMyAdminので

:私は何とかdidnの明白なことを指摘して

date('Y-m-d H:i:s') 
関連する問題