mysql只能有一列是timestamp的問題

MySQL Error 「There can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT clause」 even though I'm doing nothing wrong

http://jasonbos.co/two-timestamp-columns-in-mysql/mysql


這是一個很是常見的表:有create_time , update_time,甚至能夠說是規範,固然咱們想這些時間自動更新,交給Mysql處理,可是問題來了:sql

建立一個這樣的表:
spa

CREATE TABLE `test_table` (
`id` INT( 10 ) NOT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE = INNODB;

原來Mysql會自動處理:code

CREATE TABLE `test_table` (
`id` INT( 10 ) NOT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT 0,
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE = INNODB;
INSERT INTO test_table (id, created_at, updated_at) VALUES (1, NULL, NULL);

have fun...
get

相關文章
相關標籤/搜索