zoukankan      html  css  js  c++  java
  • mysql中GROUP BY时报错sql_mode=only_full_group_by错误

    今天在上正式数据服务器测试软件时突然发生了sql_mode的报错: sql_mode=only_full_group_by。之前在本地库的时候没有遇到过一脸懵逼,在查阅了资(bai)料(du)之后才明白原来是数据库版本为5.7以上的版本,默认是开启了 only_full_group_by 模式的,但开启这个模式后,原先的 group by 语句就报错。

    首先使用以下查询语句查询是否含有only_full_group_by:

    select @@GLOBAL.sql_mode;

    然后使用如下sql语句进行sql_mode的更新,去除掉only_full_group_by:

    set  @@GLOBAL.sql_mode='';
    
    set @@GLOBAL.sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';

    这样更新之后在不进行服务器重启时可以一直使用,但是一旦服务器重启之后将会回归原来的样子only_full_group_by一样的存在。

    所以对此我们需要对mysql的配置文件my-default.ini (或者my.cnf)进行修改,在里面的[mysqld]下面添加

    sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION

    实图如下:

    这样即使重启服务器那么sql_mode一样的不会含有only_full_group_by了,这样就OK了

     --------------------------------------------------------------------------------------分割线-------------------------------------------------------------------------------------------------------------------

    个人使用

  • 相关阅读:
    HDU 1195.Open the Lock
    HDU 2612.Find a way
    HDU 1240.Asteroids!
    HDU 1429.胜利大逃亡(续)
    HDU 1253.胜利大逃亡
    HDU 2102.A计划
    HDU 2579.Dating with girls(2)
    HDU 1782.逃离迷宫
    洛谷1297[国家集训队]单选错位
    spoj1026Favorite Dice
  • 原文地址:https://www.cnblogs.com/ggq94/p/12843628.html
Copyright © 2011-2022 走看看