Tôi đang cố gắng để làm:Vấn đề với các thông số vị trí trong JPA có nguồn gốc truy vấn
String sql = "SELECT email FROM users WHERE (type like 'B') AND (username like '?1')";
List results = em.createNativeQuery(sql).setParameter(1, username).getResultList();
Nhưng tôi nhận được IllegalArgumentException đó nói với tôi rằng các thông số vượt quá giới hạn. Tôi đang làm gì sai?
Tôi nghĩ rằng chúng dựa trên 1 (trái với logic) – Bozho
@Bozho: Chắc chắn? * Trái ngược với JDBC, các số tham số của Hibernate từ số không. * Http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/objectstate.html#objectstate-querying-executing –
Ah, đúng. Tôi đã luôn luôn sử dụng các thông số được đặt tên, do đó, điều này đã eluded tôi :) – Bozho