您的位置:首页 > 教育 > 锐评 > 外贸网站制作费用_乐陵森大_seo建站工具_职业技能培训中心

外贸网站制作费用_乐陵森大_seo建站工具_职业技能培训中心

2025/4/4 14:39:09 来源:https://blog.csdn.net/moamao_jishuyuan/article/details/144560895  浏览:    关键词:外贸网站制作费用_乐陵森大_seo建站工具_职业技能培训中心
外贸网站制作费用_乐陵森大_seo建站工具_职业技能培训中心

背景介绍:

公司项目要进行mysql升级, 从 5.7 升级到 8.0,需要进行影响调查, 找了个测试服务器,装了 mysql8.0.32进行测试,标题错误,我遇见了两次:

1. WEB 程序报标题错误
2. procedure 报标题错误


1.WEB 程序报标题错误,解决方案

WEB 程序报标题错误的时候, 就搜怎么解决, 都说修改 sql_mode 就OK

参照博客:

https://blog.csdn.net/weixin_43102784/article/details/136162801

# 确认 sql_mode
SELECT version(),@@SESSION.sql_mode,@@GLOBAL.sql_mode;# 更新sql_mode (选中你自己使用的DB)
SET @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';SET sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

刷新 WEB 程序, 不报错了

这样改有个问题, 就是重启 mysql 后, 还是会报这个错误, 想要长期有效,需要更改配置文件

vim /ect/my.cnf

找到 sql_mode  关键字, 删掉  only_full_group_by 

如果没有 sql_mode 配置,则将下面的语句贴到 [mysqld] 的最后

sql_mode ='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION'

2. Procedure 报标题错误解决

由于我导库的时候,sql_mode 还没改,用的还是 default 值

而 procedure 是创建的时候采用什么样的 sql_mode, 以后调用的时候还采用创建时候的 sql_mode, 所以,即便后来改了 sql_mode,也对 procedure 不管用

解决办法是将 procedure 删掉重新 create 一下,再执行就没问题了

官方声明:
MySQL stores the sql_mode system variable setting in effect when a routine is created or altered, and always executes the routine with this setting in force, regardless of the current server SQL mode when the routine begins executing.

MySQL :: MySQL 8.0 Reference Manual :: 15.1.17 CREATE PROCEDURE and CREATE FUNCTION Statementsicon-default.png?t=O83Ahttps://dev.mysql.com/doc/refman/8.0/en/create-procedure.html

参考文档:

MySQL :: MySQL 8.0 リファレンスマニュアル :: 5.1.11 サーバー SQL モード

mysql8.0出现this is incompatible with sql_mode=only_full_group_by解决方案_mysql 8.0 group by clause; this is incompatible w-CSDN博客

https://stackoverflow.com/questions/45560680/stored-procedure-raising-incompatible-with-sql-mode-only-full-group-by-despite

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com