我想知道如何使用预处理语句来进行插入查询。通常对于选择查询,我是按以下方式使用的。
Query query = JPA.em()
.createNativeQuery("select item_status from item_details where box_id=:boxnumber");
query.setParameter("boxnumber", boxNumber);
但是,当我使用插入查询时,我无法像上面那样使用。
Query query = JPA.em()
.createNativeQuery("insert into item_details values(':item_status')");
query.setParameter("item_status", itemstat);
我遇到了以下错误:
java.lang.IllegalArgumentException:
org.hibernate.QueryParameterException: could not locate named parameter [item_status]
at org.hibernate.ejb.QueryImpl.setParameter(QueryImpl.java:368) ~[hibernate-entitymanager-3.6.9.Final.jar:3.6.9.Final]
at org.hibernate.ejb.QueryImpl.setParameter(QueryImpl.java:72) ~[hibernate-entitymanager-3.6.9.Final.jar:3.6.9.Final]
请有人帮我解决这个问题。提前感谢。