gpt4 book ai didi

java - 我的愚蠢错误 : hibernate SQL throwing invalid character

转载 作者:行者123 更新时间:2023-12-03 08:35:47 25 4
gpt4 key购买 nike

免责声明:这只是我犯的一个愚蠢的错误。没有关闭它,因为也许其他人做了同样的事情并且可能会发现它有用。

两个表:

COR_RADICADO_OFICIO:
- num_radicado (pk)
- ano_radicado (pk)

(我知道,复合 pks 是邪恶的,但它是一个遗留数据库,不是我的设计;))

COR_RESPUESTA_OFICIO:
- num_radicado (text)(fk)
- ano_radicado (number)(fk)
- requiere_respuesta (number)

在 hibernate 状态下:

createSQLQuery("select * from COR_RADICADO_OFICIO where REQUIERE_RESPUESTA = 399 " +
"and concat(concat(num_radicado , '_'), ano_radicado) not in "+
"(select concat(concat(num_radicado , '_), ano_radicado) from COR_RESPUESTA_OFICIO);" );

如果我直接在 oracle 上执行这个查询,它工作正常,但是 hibernate 抛出

java.sql.SQLSyntaxErrorException: ORA-00911: invalid character

尝试用“||”替换“concat”函数并得到了同样的错误。

有什么办法可以解决这个问题吗? (除了创建 View )。

最佳答案

试试去掉分号?你得到的错误并没有说无效的 SQL,它说的是无效的字符,这是完全不同的。

关于java - 我的愚蠢错误 : hibernate SQL throwing invalid character,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14245011/

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