#1366-错误的整数值:第1行的“ cid”列为“ NULL”

Joã*_*hin 2 mysql mybb

我已经使用XAMPP安装了MyBB local,并且运行顺利。但是,当我在服务器上执行此操作时,它会给我错误。

MyBB自行创建并插入大量数据,我发现错误出在以下查询中:

INSERT INTO... VALUES ('NULL', ...)
Run Code Online (Sandbox Code Playgroud)

在我的本地主机上,MySQL(两者均为5.5.27)接受这种查询,其中'NULL'作为字符串传递。但是在服务器中,标题显示错误#1366。

问题在于更改查询不是一个选择,因为它是很多查询,因此任何人都可以将其配置为可以运行的想法?

提前致谢。

小智 7

我认为您的 MySQL 服务器在严格模式下运行。

这可以通过两种方式之一解决,但您可能需要让您的托管公司为您做这件事。

方法一: 打开MySQL安装目录下的“my.ini”文件,查找类似...

# Set the SQL mode to strict
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
Run Code Online (Sandbox Code Playgroud)

用。。。来代替:

# Set the SQL mode to strict
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
Run Code Online (Sandbox Code Playgroud)

方法二:

您可以在您的数据库管理工具(例如 phpMyAdmin)中运行 SQL 查询,通常可以从您的虚拟主机控制面板找到它:

SET @@global.sql_mode= '';
Run Code Online (Sandbox Code Playgroud)


pet*_*ner 5

问题在于,对于MySQL(在这种情况下)'NULL'NULL

由于该列需要数字数据,因此您的语句不起作用,而以下内容将起作用:

INSERT INTO ... VALUES (NULL, ...)
Run Code Online (Sandbox Code Playgroud)

...也许您可以更改服务器运行所在的MySQL模式