java.lang.IllegalArgumentException: No positional parameters in query:
来源:互联网 发布:网络品牌推广方案 编辑:程序博客网 时间:2024/06/05 02:47
IllegalArgumentException
java.lang.IllegalArgumentException: No positional parameters in query:
在项目的开发过程中,因为都是在基于SSH的环境下进行的项目开发,所在很多人习惯于使用Hibernate的HQL进行项目的开发,以提高项目开发的效率,但是在某些情况下,HQL是不能满足于项目的需求的,所以我们又不得不编写原生的SQL,对于有些人在习惯了hibernate带来的便利了,所以突然需要编写原生SQL时,可能出现SQL参数设值错误的情况,当然我也不例外,关于这个问题,我想把它分享出来,希望能帮到你。
很明显告诉我们,SQL参数设置时,找不到占位符,导致的查询无法执行,以下是我的一个示例SQL ,所要描述的问题都是一样的:
query.setString(0, getSessionUser());
List list = query.list();
如上面这个问题,注意细节 - > LIKE '?%',当我们对其进行设值时,'?',在引号中,把他当成了普通字符串,而不是占位符,所以使用Hibernate进行设值时,找不到占位符,故报 " No positional parameters in query " 的错误!只有一个解决办法,在Oracle中有一个使用一个链接符号 ' || ' 将?和%拼接起来,就可以解决了,如SQL:
SELECT * FROM DEMOE D WHERE D.NAME LIKE ?||'%'
好了关于一个原生SQL参数设值的问题,就解决了,在项目开发的过程中一定要注意细节问题,往往一些很难找到的问题就是出现在细节上。
阅读全文
0 0
- java.lang.IllegalArgumentException: No positional parameters in query:
- No positional parameters in query: queryUser
- hibernate : No positional parameters in query 错误解决办法
- java.lang.IllegalArgumentException: Positional parameter does not exist: 1 in query解决
- Hiberante中No positional parameters in query: (找不到查询位置)
- java.lang.IllegalArgumentException: Illegal character in query at index xxx:
- java.lang.IllegalArgumentException: Illegal character in query at index ...解决办法
- java.lang.IllegalArgumentException: Illegal character in query at index 41:
- java.lang.IllegalArgumentException: Illegal character in query at index
- java.lang.IllegalArgumentException: Illegal character in query at index 55
- java.lang.IllegalArgumentException: Illegal character in query at index
- java.lang.IllegalArgumentException: Illegal character in query at index ...解决办法
- java.lang.IllegalArgumentException: Illegal character in query at index 55
- java.lang.IllegalArgumentException: Illegal character in query at index xxx:
- java.lang.IllegalArgumentException: Illegal character in query at index
- java.lang.IllegalArgumentException: Illegal character in query at index ...
- java.lang.IllegalArgumentException: Illegal character in query at index xxx
- java.lang.IllegalArgumentException: Illegal character in query at index xxx:
- Django为什么用uWSGI+Nginx
- JavaScript 之 var 和 let
- C#中Invoke的用法
- 联想ideapad710s的win10转win7
- three.js 01-02 之首个场景(续)
- java.lang.IllegalArgumentException: No positional parameters in query:
- Eclipse Maven 编译错误 Dynamic Web Module 3.0 requires Java 1.6 or newer 解决方案
- 我的词条 之 偏移量
- Spark的WordCount详解
- 警查审问四名嫌疑人,其中三人说真话,一人说谎。
- 预处理 宏定义
- Fidder—Fidde保存会话(save)
- 51Nod-1298 圆与三角形
- ImageLoaderUtil