MySQL指定時間類型的長度 從高版本導到低版本會報錯

MySQL指定時間類型的長度 從高版本導到低版本會報錯

錯誤現象

這兩天從不同數據庫導數據時,從高版本的MySQL8.0.16導出的結構導到低版本的MySQL5.5.59中,出現了錯誤,建表語句(節選)和報了錯誤信息分別爲:

建表語句:
CREATE TABLE `wn_jafs` (
`id` VARCHAR (100) NOT NULL COMMENT '主鍵',
`d_creat_time` datetime (0) NULL DEFAULT NULL COMMENT '創建時間',
PRIMARY KEY (`id`) USING BTREE 
) ENGINE = INNODB CHARACTER;
報錯信息:
1064 - You have an error in your SQL syntax; check the manual that corresponds to your
MySQL server version for the right syntax to use near '(0) NULL DEFAULT NULL COMMENT 
'創建時間',
PRIMARY KEY (`id`) USING BTREE 
) ' at line 3

問題排查

從錯誤信息來看,大概是第三行有問題,原來在較低版本的MySQL中datetime這種日期時間類型不支持指定長度。

問題解決

將datetime後的指定的長度刪掉,即可成功導入MySQL5.5.59中。

總結

軟件產品在版本不斷迭代的過程中,會有一些 功能上的改動,有時會給你帶來不一樣的驚喜:) 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章