91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql5.7中使用group concat函數數據被截斷的問題完美解決方法

發布時間:2020-09-23 10:43:06 來源:腳本之家 閱讀:205 作者:database 欄目:MySQL數據庫

前天在生產環境中遇到一個問題:使用 GROUP_CONCAT 函數select出來的數據被截斷了,最長長度不超過1024字節,開始還以為是navicat客戶端自身對字段長度做了限制的問題。后面故意重新INSERT了一個字段長度超1024字節的數據,但是navicat能完整展示出來,所以就排除了navicat的問題。

然后想到1024這個熟悉的數字,會不會是C++框架在接收MySQL通過socket傳輸過來的數據時被處理了呢?于是手工在日志中打印這個字段,發現即使數據長度超過1024字節仍然是可以完整顯示的。

1 查找原因

至此,只能從SQL語句出發了。網上搜了下 GROUP_CONCAT 數據截斷的問題,答案都指向了 group_concat_max_len 這個參數,它的默認值正好是1024。可以直接在數據庫中通過下面的命令查看這個默認值:

mysql> show variables like 'group_concat_max_len';
+----------------------+-------+
| Variable_name  | Value |
+----------------------+-------+
| group_concat_max_len | 1024 |
+----------------------+-------+
1 row in set (0.00 sec)
mysql>

MySQL官方手冊 對它的定義是 The maximum permitted result length in bytes for the GROUP_CONCAT() function. ,也就是它限制了 GROUP_CONCAT 數據的長度。

2 解決問題

只要調整 group_concat_max_len 到最大值就行了,官方在MySQL5.7的手冊中給出了如下定義:

Mysql5.7中使用group concat函數數據被截斷的問題完美解決方法 

由于BZ的測試虛擬機MySQL5.7.19是64位的,所以可以通過下面這兩種方法配置好 group_concat_max_len 為最大值``:

#### 方法一:修改MySQL配置文件my.cnf,在[mysqld]節點中添加
group_concat_max_len = 18446744073709551615
#### 方法二:直接控制臺上設置立即生效
-- 【必須操作】更改全局配置----
SET GLOBAL group_concat_max_len=18446744073709551615;
-- 【可選操作】使配置在當前會話中也立即生效,其它已經登錄的會話終端需要重啟生效----
SET SESSION group_concat_max_len=18446744073709551615;

3 測試效果

這里采用的是第二種方法,通過執行 SELECT LENGTH(GROUP_CONCAT(Fremark)) FROM account; 結果的對比,可以發現已經成功解決了MySQL5.7中使用GROUP_CONCAT數據被截斷的問題。

Mysql5.7中使用group concat函數數據被截斷的問題完美解決方法 

總結

以上所述是小編給大家介紹的Mysql5.7中使用group concat函數數據被截斷的問題完美解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

叙永县| 正定县| 达尔| 甘泉县| 明水县| 分宜县| 海原县| 曲周县| 鄂托克旗| 宁晋县| 张掖市| 神木县| 五家渠市| 镇雄县| 中方县| 九江市| 碌曲县| 山东省| 玉龙| 始兴县| 包头市| 汨罗市| 娄烦县| 龙口市| 安陆市| 普宁市| 西充县| 南岸区| 丰城市| 广昌县| 贵德县| 随州市| 溧水县| 伊通| 中山市| 乌兰察布市| 巴青县| 兖州市| 云和县| 博乐市| 英山县|