我最近更新了我的 MySQL(并 wamp 到 v3)并将我的旧数据库移到那里。
以前,如果没有给出值,varchar、char、text 等字段类型将假定默认值为空字符串(即使我在创建表结构时没有明确设置此默认值)。
但是在更新之后,当我尝试运行我以前工作的代码时,它给了我例外
字段
<field_name>
没有默认值
我猜这是mysql中的设置或其他东西。谁能帮我吗?
谢谢。
我最近更新了我的 MySQL(并 wamp 到 v3)并将我的旧数据库移到那里。
以前,如果没有给出值,varchar、char、text 等字段类型将假定默认值为空字符串(即使我在创建表结构时没有明确设置此默认值)。
但是在更新之后,当我尝试运行我以前工作的代码时,它给了我例外
字段
<field_name>
没有默认值
我猜这是mysql中的设置或其他东西。谁能帮我吗?
谢谢。
原来严格模式已启用。
通过更改行禁用严格模式
sql-mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER"
至
sql-mode=""
参考: https: //support.kayako.com/article/472-how-do-i-disable-mysql-strict-mode-on-the-server