IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

equivalent en hql de cette requette


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Par défaut equivalent en hql de cette requette
    Bonjour,
    j'aimerais bien savoir l'équivalent de cette requette en HQL:

    1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from client where nom='Ahmed' and prenom='alaoui'
    .
    2) maintenant supposons que j'ai une méthode qui prend en paramètre le nom (nom1) et le prenom (prenom1) du client, et à l'intérieur de cette méthode je dois avoir la raquette suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    request = "select * from client where nom=nom1 and prenom =prenom1";
    quelqu'un peut m'aider?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Par défaut
    tu crée un nouveau query avec comme requête : "select * from clients where nom=:nom1 and prenom=:prenom1". Ensuite tu "set" les paramètres de ton query en faisant : query.setParameters(nom1,"nom1") où nom1 est le paramètre de ta méthode et "nom1" est le paramètre utilisé dans ta requête. Et tu fait pareil avec le prenom.

    J'espère que cela t'aide ...

  3. #3
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Par défaut
    merci pour votre aide,

    mais est ce que la solution que tu as proposer existe en HQL, parce que moi je travaille avec hibernate qui utilise le HQL.

  4. #4
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Par défaut
    j'ai essayé le code suivant mais il ya quelque chose qui marche pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    String request = "from ReferenceBudgetaire r where r.type=:t and r.idBudget =:i";
        		Query query = getSession().createQuery(request);
        		query.setParameters(type,"t");
        		query.setParameters(idBudget,"i");
    type et idbudget sont les parametres passés par ma methode.

    j'ai ensuite remplacé request par la valeur suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String request = "from ReferenceBudgetaire r where r.type='"+type+"' and r.idBudget ="+idBudget;
    mais cela génére l'exception suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    java.lang.IllegalArgumentException: No positional parameters in query: from ReferenceBudgetaire r where r.type='chapitre' and r.budget.idBudget =3

  5. #5
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Par défaut
    j'ai trouvé la solution dans un PDF sur internet http://metaarchit.com/hibernate_tuto...orial%2009.pdf

    voilà donc ma solution:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    String request = "from ReferenceBudgetaire r where r.type=? and r.idBudget =?";
     
        		Query query = getSession().createQuery(request);
     
        		query.setString(0,type);
        		query.setInteger(1, idBudget);

  6. #6
    Membre très actif Avatar de ZeRevo
    Inscrit en
    Avril 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2007
    Messages : 302
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    String request = "from ReferenceBudgetaire r where r.type=:t and r.idBudget =:i";
        		Query query = getSession().createQuery(request);
        		query.setParameter("t",type);
        		query.setParameter("i", idBudget);
    Dans le bon sens c'est mieux

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Syntaxe Requette Hql
    Par lionel84 dans le forum Hibernate
    Réponses: 2
    Dernier message: 13/08/2008, 17h24
  2. requette jointure hql
    Par isselmoumg dans le forum Hibernate
    Réponses: 1
    Dernier message: 22/05/2008, 14h11
  3. Comment realiser cette requette ?
    Par H-bil dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 26/06/2007, 23h06
  4. [MySQL] Comment puis-je faire l'inverse de cette requette
    Par pierrot10 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 06/06/2007, 13h05
  5. cette requette est elle possible?
    Par domino_dj dans le forum Requêtes
    Réponses: 2
    Dernier message: 29/03/2007, 11h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo