ThinkPHP數據庫遷移錯誤

在ThinkPHP裏執行數據庫遷移時報如下錯誤

[InvalidArgumentException]
  There was a problem creating the schema table: SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for 'end_time'

首先懷疑建表時的end_time的默認值設置錯了。然而查看建表字段里根本沒有end_time字段。

查看migration的代碼,分析到其會建立一個migrations的表,此表裏會有一個end_time字段,初步懷疑是建表時需要先建立migration的表而導致上面的錯誤。

於是通過MySQL語句直接創建migrations表,發現同樣報此錯誤。將問題指向了MySQL的配置。

將my.ini裏sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_ENGINE_SUBSTITUTION 改爲sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER

再次運行成功!

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