この問題を説明する最良の方法は、例を使用することです。
私はテーブルを持っています:
CREATE TABLE `example` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`data` varchar(255) DEFAULT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
結果:
ID | データ | 作成 | 更新しました (ヌル)| (ヌル) | (ヌル) | (ヌル)
次に、いくつかのデータを挿入します。
INSERT INTO example (
`data`
) VALUES (
'abc123'
)
結果:
ID | データ | 作成 | 更新しました 1 | abc123 | 2013-01-16 13:12:16 | (ヌル)
そして、私は更新します
UPDATE example SET
`data` = 'def456',
`updated` = NOW()
WHERE id = 1
結果:
ID | データ | 作成 | 更新しました 1 | def456 | 2013-01-16 13:16:24 | 2013-01-16 13:14:26
問題:created
フィールドも更新され、更新されたフィールドが正しく保存されるまでの時間がわずかに異なることに注意してください。このサンプルテーブルと他のテーブルを同じデータベースに同じようにセットアップしましたが、この問題はありませんでした。そのため、完全に困惑しています。