mysql 8.0.20 插入报错

167 阅读1分钟

前提

cenos7 安装 mysql 后,使用 Navicat 执行插入操作时一直报错:

Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which  is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

原因

这是数据库的 sql_mode 设置的有问题。Mysql 可以支持不同的 SQL 模式,不同的 SQL 模式会有不同的语法,执行不同的数据校验简查

解决方法

  1. 先查看一下数据库现在的 sql_mode 的值
select version(), @@sql_mode;
  • 使用如下语句,设置自己需要的 sql_mode
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

本文使用 mdnice 排版