1
我在Ubuntu 13.04上運行了Percona的mysql fork(5.6.15)。花費時間太長嘗試調試一個問題,我們的ETL過程中的一個之後,我發現MySQL的是修改我創建表的語法:自動(不需要)在MySQL更新觸發器?
mysql> CREATE TABLE test (test TIMESTAMP);
Query OK, 0 rows affected (0.03 sec)
mysql> show create table test\G
*************************** 1. row ***************************
Table: test
Create Table: CREATE TABLE `test` (
`test` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.01 sec)
mysql>
我不希望這對觸發更新,我發現我可以通過將該列設置爲'TIMESTAMP NULL'來解決此問題,但我也不希望此字段爲空。
我完全脫離基地或應該不會發生?有沒有人遇到過這個?這是我不知道的一些設置,或者這可能是一個錯誤(我知道他們改變了5.6中的時間戳字段的一些行爲)?
我的谷歌福已經失敗了,謝謝先生。我已選擇更改explicit_defaults_for_timestamp系統變量以停止此行爲:http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_explicit_defaults_for_timestamp – Conslo