0
下面的查詢給我錯誤,如Missing IN or OUT parameter at index:: 1
我試過它沒有括號在IN
參數如... WHERE p.SALES_TYPE IN :types
。但仍然是同樣的錯誤。原生查詢IN子句投擲sql錯誤
public List getWithinXDays(ArrayList<String> salesTypes,String sId, String xdays) {
Query q = em.createNativeQuery("SELECT p.ORDER_ID FROM formtable p WHERE p.SALES_TYPE IN (:types) AND p.MCODE=:sid AND TRUNC(SYSDATE - p.creationdate) <=:days");
q.setParameter("types",salesTypes);
q.setParameter("sid",sId);
q.setParameter("days",xdays);
List salesOrderRow = q.getResultList();
return salesOrderRow;
}
堆棧跟蹤:
<Jan 10, 2017 4:12:07 PM SGT> <Warning> <EclipseLink> <BEA-2005000> <2017-01-10 16:12:07.551--UnitOfWork(29679273)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: Missing IN or OUT parameter at index:: 1
Error Code: 17041
去掉大括號:'IN(:types)' – Jens
@Jens同樣的錯誤。我也嘗試過。 –
salesTypes的valyue是什麼?n是否爲空或爲空 – farrellmr