gpt4 book ai didi

java - Hibernate 将日期格式转换为问号

转载 作者:行者123 更新时间:2023-11-30 22:31:20 30 4
gpt4 key购买 nike

我正在通过 hibernate 创建一个 sql 查询。我有一个选择查询;

SELECT IFNULL(DATE_FORMAT(q.create_date, '%Y-%m-%d %H:%i'), ' ') as createDate ..

但是 hibernate 将该查询转换为

SELECT IFNULL(DATE_FORMAT(q.create_date, '%Y-%m-%d %H?'), ' ') as createDate

所以它认为我需要发送一个问号参数。

知道为什么会这样吗?

谢谢

最佳答案

你必须在 Hibernate 中转义 :

引用这篇文章 - Using Hibernate query : colon gets treated as parameter / escaping colon

您可以通过将查询更改为:

SELECT IFNULL(DATE_FORMAT(q.create_date, '%Y-%m-%d %H\\:%i'), ' ') as createDate ..

更新:

或者,您可以替换为这篇文章中提到的 unicode 字符 - how to escape colon in HQL

q=q.replaceAll(":","'||unistr('\\003A')||'");

关于java - Hibernate 将日期格式转换为问号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33827916/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com