我有一个 MySQL 存储过程,它使用 GROUP_CONCAT 返回一个字符串,其中包含大约 1200 - 1300 个字符。但是,当数据包在我的 Java 代码中返回时,长度会减少到 1023/1024。
我尝试将 MySQL 的 max_allowed_packet 增加到 524288000,将 group_concat_max_len 增加到 1000000000,但没有成功。 p>
关于此事有什么想法吗?
最佳答案
更改参数group_concat_max_len
以克服此限制。
为此,您可以使用以下命令
set session group_concat_max_len = 100000;
请注意,此更改是特定于 session 的,即......临时的。因此,您必须在 group_concat
查询之前执行上述操作。
供您引用,group_concat_max_len 的默认值为 1024。
其他信息
您还可以使用以下查询进行设置
set global group_concat_max_len = 100000;
即使你使用了它,如果你重新启动 mysql,你也会错过它。如果您想使更改永久,请使用以下内容
在mysql配置文件中,在[mysqld]
下添加
group_concat_max_len=100000
然后重新启动。
关于Java - 结果集 getString() 不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36735029/