最近在工作中遇到一个问题:

我们系统的一些逻辑处理是用存储过程实现的,但是有一天客服反馈说订单下单失败,查了下单牵扯到的产品基础资源,没有问题。

下单的存储过程中有这样两句代码:

1 declare _err int default 0;2 DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND set _err=1;3 DECLARE CONTINUE HANDLER FOR SQLSTATE ‘23000‘ set _err=2;

执行存储过程后 变量_err会返回1,只能调试存储过程找问题了。调试到下面这段的时候,发现执行完这句sql,_err就变成1了

1 select group_concat(concat(@room_name,‘,‘,run_date,‘,‘,total_count) separator ‘|‘) into @order_desc from tmp_order_detail order by run_date;

由于临时表tmp_order_detail 中的数据比较多,所以猜测是不是group_concat的问题,所以我把临时表中的数据减少了一半,发现成功了,所以猜测group_concat是不是有长度限制,google一下,果然。

关于group_concat函数:

group_concat:默认可连接的长度是1024;如果已经设置了最大长度,超过这个长度就会被截取至这个长度;

在查询(select)语句中,使用了group_concat之后,limit就会失效;

解决方法:

1、修改MySQL的配置文件:

#需要设置的长度

group_concat_max_len= 5120

2、也可以使用sql语句设置:

SET GLOBAL group_concat_max_len=5120;SET SESSION group_concat_max_len=5120;

我在存储过程中采用了上面的第二种办法,执行存储过程,OK,成功!

下班(今天是周日)!!!

mysql 修改这段长度_MySQL中使用group_concat()函数数据被截取(有默认长度限制),谨慎!...相关推荐

  1. mysql函数 字符长度限制_MySQL中使用group_concat()函数数据字符过长报错的问题解决方法...

    最近在办公软件项目,在开发权限指标遇到一个问题: 我们系统的一些逻辑处理是用存储过程实现的,但是有一天客户反馈说权限指标分配报错,查了分配的权限数据牵扯到的数据权限基础资源,没有问题. 权限指标分配的 ...

  2. mysql修改database名_MySQL中修改database的名字

    背景案例:MySQL中已经存在base的database,处于某种原因需要改为改为gzbase.步骤如下: 1.首先创建目标数据库: mysql>create database gzbase; ...

  3. mysql修改表中文名_MySQL中如何修改表的名字?修改表名?

    需求描述 今天在进行MySQL表的历史数据迁移,需要将某张表进行备份,修改表的名字,在此记录下操作过程. 操作过程 mysql> create table ts01 like ti_o_sms; ...

  4. mysql索引排序算法_MySQL中利用索引对数据进行排序的基础教程

    MySQL中,有两种方式生成有序结果集:一是使用filesort,二是按索引顺序扫描.利用索引进行排序操作是非常快的,而且可以利用同一索引同时进行查找和排序操作.当索引的顺序与ORDER BY中的列顺 ...

  5. mysql sleep详解_MySQL中的sleep函数介绍

    MySQL数据库中有一个不太常用但便于进行某些调试的函数:sleep(),今天我们就来介绍一下这个函数的用法. 首先,看看官网对于函数的定义: SLEEP(duration) Sleeps (paus ...

  6. Sql Server中实现Mysql中的group_concat函数效果

    Sql Server中实现Mysql中的group_concat函数效果 SELECT oi.*, stuff((select ','+convert(varchar(25), GuestName) ...

  7. mysql获取当月最后一天_mysql中获取本月第一天、本月最后一天、上月第一天、上月最后一天

    mysql获取当月最后一天_mysql中获取本月第一天.本月最后一天.上月第一天.上月最后一天等等 转自: https://blog.csdn.net/min996358312/article/det ...

  8. 修改mysql 视图字段类型_MySQL中的数据类型,列选项,视图

    列的数据类型 整型 类型 取值范围 tinyint -128 - 127 smallint -32768 - 32767(几万) mediumint -8388608 - 8388607(几百万) i ...

  9. mysql 缓存怎么设置_mysql中缓存如何设置

    我就废话不多说了,大家还是直接看代码吧~create or replace function aa1(a1 integer[],a2 bigint) returns void AS $$declare ...

最新文章

  1. 知识图谱的皇冠:知识图谱推理的前世今生
  2. 未來用工新趨勢_数字化商业浪潮来袭 未来用工新趋势成焦点
  3. 已添加了具有相同键的项_奥迪Q2L已上市,配LED光源,21.88万起,搭1.4T
  4. 视觉特征--ORB系列
  5. HDFS重复上传文件将会覆盖原文件
  6. 百度商业大规模微服务分布式监控系统-凤睛
  7. 备份文件命令SqlServer一键复制数据库脚本
  8. JUC锁-Semaphore(八)
  9. Storm精华问答 | Storm的配置需要注意什么问题?
  10. svd降维 python案例_SVD(奇异值分解)Python实现
  11. springboot2.2.9源码搭建
  12. python数据分析-如何在业余时学数据分析?
  13. Ubuntu18.04找不到wifi适配器解决办法以及怎么上网
  14. Java: 将中文省市名转换为指定格式拼音
  15. python中re.group()
  16. TypeScript Essential Notes 2 - ES6 Language Features
  17. 仙侣奇缘2 无法 启动mysql_仙侣奇缘2服务端
  18. flash php个人站_PHP Flash整站系统
  19. 无人便利店和无人售货机的区别在哪
  20. kubernetes CKS 4.3 Pod安全策略(PSP)

热门文章

  1. java web 手机验证_JAVA-WEB,好知网,登录注册,手机验证
  2. e2 android,魅蓝E2做工怎么样?魅蓝手机E2拆机全过程图解
  3. Android xmlns 的作用及其自定义
  4. 基于JAVA+SpringMVC+Mybatis+MYSQL的房屋租赁管理系统
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的车库管理系统
  6. windows10怎样关闭,开机启动项中不需要的应用?
  7. 我的MySQL数据库学习笔记
  8. 网络棋牌游戏服务器架构
  9. 2016年5月26日晚上(妙味课堂js基础-2笔记二(DOM))
  10. Android Task 相关