Question

veuillez convertir le sql en hql

Instruction SQL : s élimine le nom d'utilisateur de useraccout où email = "valeur du paramètre"

Description supplémentaire:

lors de l'exécution du code, l'erreur suivante apparaît:

public  List dispUser(String email){
    Query query = em.createQuery("SELECT u.username FROM Useraccout u WHERE u.email=:email)");
    query.setParameter(email, email);
    List search = query.getResultList();
    return search;
}

lors de l'exécution du code, l'erreur suivante s'affiche

java.lang.IllegalArgumentException: org.hibernate.hql.ast.QuerySyntaxException:
Useraccout is not mapped [SELECT u.username FROM Useraccout u WHERE u.email=:email1)]
        at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:624)
        at org.hibernate.ejb.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:96)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
Était-ce utile?

La solution

Il semble que vous n'ayez pas mappé une classe nommée Useraccount . Ma conjecture est que soit:

  • Vous avez mappé une classe nommée Useraccount et avez mal saisi le nom de cette classe dans la requête
  • Vous n'avez mappé aucune classe. Cela indique que vous ne comprenez pas les bases d'Hibernate. En résumé, chaque classe mappée sur une table de base de données doit définir ce mappage à l'aide d'un fichier XML ou d'annotations.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top