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

JDBC Java Discussion :

RowSetMetaDataImpl une info


Sujet :

JDBC Java

  1. #1
    Membre confirmé Avatar de totoche
    Inscrit en
    Janvier 2004
    Messages
    1 090
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 090
    Points : 558
    Points
    558
    Par défaut RowSetMetaDataImpl une info
    Bonjour,
    J'utilise JoinRowSetImpl() afin d'effectuer une jointure sur les enregistrements de 2 ResultSet

    Lorsque l'on écrit le prédicat de jointure en 1ere position dans la deuxième clause sql, l'accès au metadata retourne null pour la 2 eme champ de la requete.

    ex
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    //base1
    
    JoinRowSet jrs = new JoinRowSetImpl();
    
    rs = stmt.executeQuery("select idContrat, cClient from Clients")...
    CachedRowSet versement = new CachedRowSetImpl();
            versement.populate(rs);
            versement.setMatchColumn(1); 
            jrs.addRowSet(versement);
    
    
    
    //base2
    rs2 = stmt.executeQuery("select idContrat, prixContrat, hContrat from Contrats")..
            CachedRowSet ct = new CachedRowSetImpl();
            ct .populate(rs2);
            ct .setMatchColumn(1); // Le critère de jointure
            jrs.addRowSet(ct);
            
    
    RowSetMetaDataImpl rsm = (RowSetMetaDataImpl) jrs.getMetaData();
     for (int i=1; i<=rsm.getColumnCount(); i++){
     System.out.println(rsm.getColumnName(i) + "---" + rsm.getColumnLabel(i));
    //console
      idContrat --- Contrat
      cClient --- Code Client
      prixContrat --- Null 
      hContrat --- Prix Contrat (parfois un décalage...)
    Pour contourner cette situation j'ai écris le prédicat de jointure en derniere position dans la 2 ème requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    rs2 = stmt.executeQuery("select prixContrat, hContrat, idContrat from Contrats")..
    ct .setMatchColumn(3); // Le critère de jointure
    Avez-vous déjà rencontré ce probleme ?

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Pourquoi ne pas utiliser une seule requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select A.idContrat, A.cClient, B.prixContrat, B.hContrat 
    from Clients A INNER JOIN Contrats B ON A.idContrat = B.idContrat
    Cela ne répond naturellement pas au mystère du "null pour la 2 eme champ"
    mais devrait fonctionner sans problème.

Discussions similaires

  1. Mettre une info bulle Tooltiptext sur un rectangle?
    Par danje dans le forum Graphisme
    Réponses: 7
    Dernier message: 21/11/2005, 09h31
  2. recuperer une info sur case a cocher
    Par nogood1 dans le forum Access
    Réponses: 1
    Dernier message: 21/10/2005, 14h15
  3. Comment récupérer une info d'une page internet ?
    Par Magicien d'Oz dans le forum Réseau
    Réponses: 3
    Dernier message: 12/10/2005, 07h38
  4. récuperer une info fourni par un exe
    Par peuf23 dans le forum Langage
    Réponses: 4
    Dernier message: 26/07/2005, 14h41
  5. [SAX] [Débutant(e)]Sortir une info d'un XML en SAX
    Par BernardT dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 07/07/2005, 21h15

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