我正在尝试创建一个Hibernate条件过滤器,它使用数据库(Oracle)函数作为 Where 的一部分。
到目前为止,我已经使用了sqlRestriction ...但我似乎无法使{alias}工作(我试图将当前行的“id”作为函数参数提供) 。
例如,我的函数有两个参数:def query = {
and {
sqlRestriction("F_FGAC('SomeText',{alias}.id) = 'Y'")
}
}
我得到的错误是:
没有方法签名:basecas_05.EmplController.sqlRestriction()适用于参数类型:(java.lang.String,java.lang.String)值:[F_FGAC('SomeText',{alias} .id)= 'Y' ...]。
知道这里的问题是什么......?
答案 0 :(得分:0)
我看到了问题...它不是别名,而是我没有在方法中加入正确的参数......这有效:
sqlRestriction(“F_FGAC('SomeText',{alias} .id)='Y'”)