MySql5.7版本问题sql_mode=only_full_group_by的完美解决方案
程序员文章站
2023-12-28 12:08:04
...
查看sql_mode
select @@sql_mode
查询出来的值为:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
我们需要去掉ONLY_FULL_GROUP_BY这个参数;
网上提供的解决方法:
去掉ONLY_FULL_GROUP_BY,重新设置值:
set @@sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
上面是改变了全局sql_mode,对于新建的数据库有效。对于已存在的数据库,则需要在对应的数据下执行:
set sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
laragon上我试过并不能解决!!!
laragon上的解决方法:
1.打开 菜单->mysql->my.ini 然后找到 找到mysqld
[mysqld]
port=3306
socket=/tmp/mysql.sock
key_buffer_size=256M
max_allowed_packet=512M
table_open_cache=256
sort_buffer_size=1M
read_buffer_size=1M
read_rnd_buffer_size=4M
myisam_sort_buffer_size=64M
thread_cache_size=8
query_cache_size=16M
secure-file-priv=""
explicit_defaults_for_timestamp=1
datadir= "D:/laragon/data/mysql/mysql"
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
在他的最下面添加一行,如上
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
最后重启mysql,完美解决问题!
推荐阅读
-
出现“this is incompatible with sql_mode=only_full_group_by“问题的解决方案
-
MySql5.7版本问题sql_mode=only_full_group_by的完美解决方案
-
MySQL5.7版本sql_mode=only_full_group_by问题解决办法
-
MySQL5.7版本的only_full_group_by及关于sql_mode报错详细解决方案
-
MySql版本问题sql_mode=only_full_group_by的完美解决方案
-
MYSQL5.7版本sql_mode=only_full_group_by问题,重启有效的方法
-
MySQL5.7.9版本sql_mode=only_full_group_by问题的解决办法
-
MySql版本问题sql_mode=only_full_group_by解决方案
-
MySql版本问题sql_mode=only_full_group_by的完美解决方案
-
MySql版本问题sql_mode=only_full_group_by解决方案