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

再次运行成功!

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