JPA-Query funktioniert nicht

Können Sie mir bitte helfen mit diesem problem? Ich möchte diese Methode verwenden, für das spezifische nick in meiner Datenbank (ist Es aus mit Apache Derby). Ich habe den EntityManager und-mapping, Persistenz - Entity-Klassen aus der Datenbank in NetBeans.

public static boolean findByNick(String nick) {

    List<eng.db.User> ret;
    EntityManager em = getEntityManager();

    Query q = em.createQuery("SELECT * FROM User u WHERE u.nick =:nick");
    q.setParameter("nick", nick);
    ret = q.getResultList();
    em.close();

    boolean hodnota = false;

    if (ret.isEmpty()) {
        hodnota = true;
    }

    return hodnota;
}

Bekomme ich diesen Fehler:

java.lang.IllegalArgumentException: Eine Ausnahme ist aufgetreten während der Erstellung einer Abfrage in der EntityManager:

Ausnahme Beschreibung: Syntax-Fehler beim Parsen der [SELECT * FROM User u WHERE u.nick =:nick)].

[21, 21], Eine select-Anweisung eine FROM-Klausel.

[7, 7] Der linke Ausdruck fehlt aus dem arithmetischen Ausdruck.

[9, 20] Der richtige Ausdruck nicht ein arithmetischer Ausdruck.

[41, 42] Die Abfrage enthält eine ungültige Endung.

Wo ist das problem bitte?

  • auch wenn Sie mit einem: "VOM Benutzer u, WO u Sie.nick =:nick", wie die Abfrage ?
  • Wo ist das problem? Das ist nicht eine gültige JPQL-Abfrage. Es gibt kein "*" in JPQL. Jede grundlegende JPA-Referenz würde dir das sagen
InformationsquelleAutor Mato | 2014-01-01
Schreibe einen Kommentar