Java web 服务 mybaits 执行的 SQL 和我在 mysql 上执行的 SQL 一样,但是返回的数据却不同。这个是什么情况,大家有见过的吗?

2019-07-06 12:11:17 +08:00
 TiAmoi
2431 次点击
所在节点    问与答
19 条回复
TiAmoi
2019-07-06 12:11:34 +08:00
[图片][图片][图片]
TiAmoi
2019-07-06 12:12:13 +08:00
图片怎么加上去?
TiAmoi
2019-07-06 12:13:18 +08:00
实际是是,web 服务执行的 SQL,查询的数据和我复制相同的 SQL 去 mysql 查询的数据不同。Mysql 数据库连接的是相同的库。问题找不到。不知道大家有没有遇到过?
MoHen9
2019-07-06 12:19:23 +08:00
???

: )

请放图!!!
choice4
2019-07-06 12:19:30 +08:00
是不是 ResultMap 没有 id 标签
paodange
2019-07-06 12:20:27 +08:00
使用了 group by,有部分列没有聚合函数也没有出现在 group by 中会出现这种问题
micean
2019-07-06 12:50:56 +08:00
有排序吗?
reus
2019-07-06 14:34:55 +08:00
说明不是一样
opengps
2019-07-06 14:42:03 +08:00
编码规则一样吗?
NizumaEiji
2019-07-06 14:49:17 +08:00
用 debug 日志把 mybatis 发送的 sql 打印出来看看
是不是什么插件 导致生成的 sql 和实际的 sql 不一样
limuyan44
2019-07-06 15:07:53 +08:00
说明 mybatis 最终执行的 sql 和你以为的不是一样的,你要说哪里不一样咱也没法猜不是,反正肯定不是执行相同 sql 得到不同结果就是了,建议打印出最终执行 sql
cabing
2019-07-06 15:47:33 +08:00
sql 日志有木有~~
oneisall8955
2019-07-06 18:46:46 +08:00
是不是二级一级缓存?重启服务查出来试试?
BigBunny
2019-07-06 22:12:55 +08:00
有缓存。
作为一个啥都不懂的非 java 开发,之所以能知道原因
是因为参加一个朋友婚礼时,看着伴娘在婚礼前一天花了一下午的时间排查这个问题。
印象比较深刻😂️
abcbuzhiming
2019-07-06 22:23:38 +08:00
一般来说应该是你开了缓存导致的
Takamine
2019-07-07 00:07:54 +08:00
@BigBunny 心疼。(。ò ∀ ó。)
yuikns
2019-07-07 01:19:50 +08:00
@BigBunny 好惨
watzds
2019-07-07 05:38:47 +08:00
连接参数也可能不一样
TiAmoi
2019-07-08 10:08:01 +08:00
SQL 都打印出来的,是一样的,参数的值也是一样,是我从 mysql 设置打印 SQL 中复制去 MYSQL 查询,两种放回的值不一样。我一开始也以为是缓存问题,不过看了一下,一级缓存不会出现这样的情况,二级缓存我没开启。。现在就是找不到问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/580557

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX