最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql8中如何設(shè)置sql-mode

 更新時(shí)間:2023年07月01日 14:26:43   作者:wfsm  
這篇文章主要介紹了mysql8中如何設(shè)置sql-mode問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mysql8如何設(shè)置sql-mode

mysql8報(bào)錯(cuò),

在這里插入圖片描述

在mysql配置文件下設(shè)置

sql_mode=‘NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES'

在這里插入圖片描述

在mysqlld下添加sql-mode

在這里插入圖片描述

mysql8配置sql_mode(解決group by遇到的Expression #2 of SELECT list is not in GROUP BY clause問(wèn)題)

問(wèn)題

MySQL 5.7.5及以上功能依賴檢測(cè)功能。

如果啟用了ONLY_FULL_GROUP_BY

SQL模式(默認(rèn)情況下),MySQL將拒絕選擇列表,HAVING條件或ORDER BY列表的查詢引用在GROUP BY子句中既未命名的非集合列,也不在功能上依賴于它們。

解決方法一(不推薦):sql設(shè)置

1、navcat中新建查詢:

select @@global.sql_mode

結(jié)果:

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,問(wèn)題就出在這上

2、修改sql_mode

set @@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

注意:“8.0.x的版本不支持NO_AUTO_CREATE_USER,去掉即可”

這樣的方式只能解決單表,且如果Mysql服務(wù)重啟(即服務(wù)器重啟)則會(huì)被mysql的默認(rèn)ini配置覆蓋,因此不推薦。

解決方法二:修改Mysql的默認(rèn)配置文件my.ini(推薦)

以下為本人的配置:

[mysqld]
# 設(shè)置3307端口(原先的mysql5已經(jīng)占用3306)
port=3307
# 設(shè)置mysql的安裝目錄(你自己的目錄)
basedir="D:\\Environment\\mysql-8.0.30-winx64"
# 設(shè)置mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)的存放目錄
datadir="D:\\Environment\\mysql-8.0.30-winx64\\data"
# 允許最大連接數(shù)
max_connections=200
# 允許連接失敗的次數(shù)。
max_connect_errors=10
# 服務(wù)端使用的字符集默認(rèn)為UTF8
character-set-server=utf8
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
# 默認(rèn)使用“mysql_native_password”插件認(rèn)證
#mysql_native_password
default_authentication_plugin=mysql_native_password
#關(guān)閉ONLY_FULL_GROUP_BY
sql_mode= 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[client]
# 設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口
port=3307
default-character-set=utf8

配置中標(biāo)紅部分為解決問(wèn)題的部分,其中注意配置需要有單引號(hào)包裹,如果你是mysql5.x,可以加上NO_AUTO_CREATE_USER;如果你是mysql8.x,則不需加上,若你加上,則會(huì)發(fā)生服務(wù)無(wú)法啟動(dòng)的情況。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

建德市| 高台县| 永吉县| 承德市| 武邑县| 藁城市| 屯门区| 永和县| 柯坪县| 合江县| 江油市| 江北区| 甘洛县| 兴国县| 上虞市| 康马县| 石首市| 观塘区| 富宁县| 扶沟县| 大埔区| 寻乌县| 万山特区| 叙永县| 大同县| 增城市| 霍州市| 新野县| 礼泉县| 赣榆县| 那曲县| 阿克| 永顺县| 台中县| 延津县| 西林县| 健康| 浦江县| 南平市| 远安县| 罗山县|