2017.11.06 | 零零碎碎 | 3879 浏览 | 0 赞 | 0 条评论


请注意,本文编写于 2357 天前,最后修改于 1811 天前,其中某些信息可能已经过时。
AI摘要:在使用Typecho插件时,可能会遇到MySQL Error "Incorrect integer value" for column 'name' at row 1的问题。这主要是因为MySQL 5.6版本中,sql_mode的默认值被设置为NO_ENGINE_SUBSTITUTION,导致程序SQL语法不严谨而报错。解决方法有两种:1. 使用SET命令,在MySQL命令行中输入SET GLOBAL sql_mode = ''; 2. 修改my.cnf文件,在文件中添加sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,然后重启MySQL服务。

Powered by AISummary and MoonShot Kimi Chat.

在使用typecho的插件时遇到了数据库的错误,通过日志回溯之后发现错误原因是MySQL Error "Incorrect integer value" for column '' at row 1,仔细查了一下。

主要的坑在于sql_mode的值,MySQL 5.5中sql_mode默认值为'', MySQL 5.6(貌似是为了增加安全性),将sql默认值定为NO_ENGINE_SUBSTITUTION,于是原来的程序sql语法不严谨就会出现报错。

处理的方法有两种:

一种是使用SET命令,在MySQL的命令行中输入

mysql> SET GLOBAL sql_mode = '';

坏处似乎是每次重新启动都需要重新设置。

另一种是修改my.cnf文件,在my.cnf配置文件中添加

sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

保存文件,重启MySQL服务。

参考资料

https://dev.mysql.com/doc/refman/5.5/en/sql-mode.html
https://dev.mysql.com/doc/refman/5.6/en/sql-mode.html
https://www.devside.net/wamp-server/mysql-error-incorrect-integer-value-for-column-name-at-row-1
http://linux.it.net.cn/m/view.php?aid=21124

本文链接:https://www.idealclover.top/archives/319/

本作品由 idealclover 采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可,转载请注明出处。

标签: mysql, typecho, sql, set

0

没有评论 T^T


🤔关于我
翠翠 idealclover
Product Manager @ByteDance
南京大学 2016 级本科生
了解更多
🏠关于博客
基于 Typecho 博客框架
使用个人的 clover clover 主题