2012-01-23 11 views
0

いいえ、古いハックはもう機能しません。現在MySQLを使用しています。5.5.11複数のタイムスタンプを持つMySQL

私のテーブルに私は同じ順序で以下を持っています。 INSERTのすべてで

created TIMESTAMP NOT NULL DEFAULT 0000-00-00 00:00:00 
updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP 

)(正しく機能するようになりました、私が更新すると、両方のMySQL 5.5.11を使用して作成し、今

を更新の上に挿入され、更新され正常に動作しますが、私が緩んで作成したが(バック0000-へ戻ります00-00 00:00:00)

MySQLの複数のTIMESTAMPサポートがないため、この制限をどのように克服できますか?

答えて

3

はい、以前のバージョンでは動作しますが、新しいバージョンでは動作しません。

`created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, 

をし、[更新]列に更新する前にトリガーを作成します。 私は次のようにこの問題を解決できると考えています。

SET new.updated = now(); 

またはその逆。

0

私が理解する限り、TIMESTAMPの列は、特定の行への操作がすべてUPDATEになると自動的に更新されます。タイムスタンプの代わりに列createdDATETIMEにする必要があるようです。

関連する問題