经过一翻百度,可能查找到的结论是语法错误,空格的多少等问题。
还有一种情况,需要考虑到当前项目对Hibernate的相关配置是否支持自己的SQL/HQL
HQL和SQL有些区别,逻辑代码在sql编辑器能正常执行,能查到需要的结果。但是把相关的参数换了,改成hql后,会出现unexpected token: null 的错误,还有可能是unexpected token : (
分析:
-
语法是否有错
-
检查空格
-
传参
-
未支持的特殊函数
我遇到的问题是第四点,有的文章说要定义自己的hibernate oracle方言类,以支持数据库特性,让hibernate可以正确执行,实际环境不允许啊,只能记录下作罢。
注:可以根据文中出现的关键字进行相关搜索,可参考的文章不是特别多。