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

Persistance des données Java Discussion :

[iBatis] Requête dynamique


Sujet :

Persistance des données Java

  1. #1
    Membre habitué
    Profil pro
    Administrateur système
    Inscrit en
    Mai 2002
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Administrateur système

    Informations forums :
    Inscription : Mai 2002
    Messages : 144
    Points : 159
    Points
    159
    Par défaut [iBatis] Requête dynamique
    Bonjour, je m'essaye à IBatis mais je cale sur une petite requête dynamique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    <resultMap id="getDynam" class="fr.kcaldos">
            <result property="dndl" column="DNDL"/>
            <result property="ncal" column="NCAL"/>
            <result property="datcom" column="DATCOM"/>
        </resultMap>
     
        <select id="dynamis" parameterClass="java.util.Map"
                             resultMap="getDynam">
              SELECT dndl, ncal, datcom from kcaldos 
              <dynamic prepend="WHERE">
                  <isNotNull prepend="AND" property="eced">
                      eced=#eced#
                  </isNotNull>
                  <isNotNull prepend="AND" property="demc">
                     demc=#demc#
                  </isNotNull>
               </dynamic>
                      datcom > to_date('01/01/2007','DD/MM/YYYY')     
       </select>
    Par exemple si eced n'est pas null, je voudrais executer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT dndl, ncal, datcom from kcaldos 
    where eced=#eced#
    and datcom > to_date('01/01/2007','DD/MM/YYYY')
    ou si les 2 propriétés sont nulles:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT dndl, ncal, datcom from kcaldos where datcom > to_date('01/01/2007','DD/MM/YYYY')
    A l'execution, j'ai l'erreur suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    run:
     
    --- The error occurred while applying a parameter map.  
    --- Check the dynamis-InlineParameterMap.  
    --- Check the statement (query failed).  
    --- Cause: java.sql.SQLException: ORA-00933: La commande SQL ne se termine pas correctement
    Je vois pas trop ce qui coince !?

  2. #2
    Membre habitué
    Profil pro
    Administrateur système
    Inscrit en
    Mai 2002
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Administrateur système

    Informations forums :
    Inscription : Mai 2002
    Messages : 144
    Points : 159
    Points
    159
    Par défaut
    En fait, j'avais juste oublié le AND à à la fin (and datcom...).
    Ceci dit, ma requête ne fonctionne que si les 2 paramètres sont saisis alors que je voudrais qu'elle tourne pour le paramètre non null.
    Sur ce point, j'avoue ne pas bien comprendre la doc concernant les "prepend" et les open="("close=")".
    Quelqu'un pourrait-il m'éclairer avec un exemple?

  3. #3
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 53
    Points : 40
    Points
    40
    Par défaut
    Bonjour,

    Je sais que cette converastion date un peu mais je suis intéressé par la solution pour faire une requete dynamique !!
    est-ce que quelqu'un pourrait m'éclairer ??

    Merci beaucoup

Discussions similaires

  1. [iBATIS 2.3.0] Requête dynamique
    Par mahermaher8989 dans le forum Persistance des données
    Réponses: 0
    Dernier message: 24/08/2012, 12h53
  2. [pb requête sql] Requête dynamique
    Par viny dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 15/09/2005, 12h31
  3. Erreur de conversion et requête dynamique dans une procédure
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 01/08/2005, 15h12
  4. [Procs stockées] [Débutant] Requête dynamique
    Par stailer dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/04/2005, 14h29
  5. Requête dynamique en pagination
    Par pascal_fluck@hotmail.com dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/03/2005, 16h04

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