在HQL中,如何使用按位运算符?我希望生成的 SQL 查询看起来像
SELECT RoleId, RoleName, RolePerms WHERE (RolePerms & @Parameter) = @Parameter
Run Code Online (Sandbox Code Playgroud)
然而,编写这个 HQL
select from Role where (RolePerms & :param) = :param
Run Code Online (Sandbox Code Playgroud)
给我这个错误:NHibernate.Hql.Ast.ANTLR.QuerySyntaxException:抛出了“Antlr.Runtime.NoViableAltException”类型的异常。
我找到了解决这个问题的方法。这样编写 HQL 是可行的:
select r from Role r where (r.Permissions & :param) > 0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6999 次 |
| 最近记录: |