IDEA日志打印的sql无返回结果,复制到navicat却有结果?

本文讲述了在IDEA中执行SQL查询出现无结果,但同样的查询在Navicat中却能得到结果的问题。问题根源在于IDEA的数据库连接缺少字符集设置。通过在URL中添加`characterEncoding=UTF-8`参数,解决了因编码不同导致的查询结果差异。此问题提醒开发者注意数据库连接的编码配置,确保数据查询的一致性。
摘要由CSDN通过智能技术生成

IDEA日志打印的sql无返回结果,复制到navicat却有结果?

1、问题

首先看看这张表,两条记录

在这里插入图片描述

下面进行查询

在这里插入图片描述

==> Preparing: SELECT attr_group_id,attr_group_name,sort,descript,icon,catelog_id FROM pms_attr_group WHERE (catelog_id = ? AND (attr_group_id = ? OR attr_group_name LIKE ?))

==> Parameters: 225(Long), 主体(String), %主体%(String)

<== Total: 0

因为sql语句太长,这里复制下来,可以看到查询结果是0

下面复制到navicat并把参数添加到占位符进行测试

在这里插入图片描述

可以看到,我们查询到了结果,可以很明确,sql没有写错

2、解决方法

经过漫长的查资料,有人提到了编码问题,然后我看了看我连接的mysql并未设置编码,如下

在这里插入图片描述

添加字符集编码

url: jdbc:mysql://localhost/gulimall_pms?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8

再次查询得到正确的结果

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值