0

我有一个查询

select ... from x join y on ..
where ... and :age between y.min and y.max

但是当使用休眠执行查询时,我收到

org.hibernate.QueryParameterException:找不到命名参数 [年龄]

怎么了?

4

2 回答 2

2

由于您尚未发布实际查询,因此我从您的代码段中推断出您的 :age 参数位于查询中的错误位置。查询的 where 子句的语法是column_name operator value,您应该使用:age其中一个表的实际列名来代替。你可能想要做的是y.min >= :age and y.max <=:age.

于 2012-05-21T09:56:14.437 回答
0

如果您已正确通过“年龄”,请检查您的 Java 代码。可能你错过了它,或者拼写错误。

如果你也分享你的java端代码会很好。

于 2012-05-21T09:48:28.543 回答