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 :

ResultSet ou QueryRunner et nom de colonne double


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Architecte logiciel
    Inscrit en
    Avril 2004
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel

    Informations forums :
    Inscription : Avril 2004
    Messages : 40
    Par défaut ResultSet ou QueryRunner et nom de colonne double
    Bonjour,

    Je voulais savoir s'il y avait un moyen pratique de traiter les noms de colonnes en double dans les résultats de recherche, autrement qu'en utilisant les indexes.
    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Table contact :
    int id_contact
    String nom_contact
     
    Table client
    String nom_client
    int id_contact_i <-- Id table contact
    int id_contact_e   <-- Id table contact
     
    Donc, si on fait la requête :
    SELECT * FROM client, contact I, contact E WHERE client.id_contact_i = I.id_contact AND client.id_contact_e = E.id_contact
    Je me retrouve donc avec 2 fois la colonne id_contact et deux fois la colonne nom_contact. Comment les extraire de mon resultSet autrement que par index ? Souci identique avec les Query Runner (common apache).

    Merci par avance.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Par défaut
    Dans ce cas, tu dois déclarer _tous_ les champs que tu souhaites récupérer et leur attribuer un alias (... AS ...) comme ci-dessous.

    Et si je puis me permettre, utilise les jointures plutôt que des where immondes :

    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
    SELECT
      client.champ1 as AAA,
      client.champ2 as BBB,
      client.champ3 as CCC,
      I.champ1 as DDD,
      I.champ2 as EEE,
      E.champ1 as FFF,
      E.champ2 as GGG
    FROM client
      LEFT JOIN contact I
        ON client.id_contact_i = I.id_contact
      LEFT JOIN contact E
        ON client.id_contact_e = E.id_contact
    WHERE
      client.prenom = "Arthur"
    Les clauses WHERE forment une sorte de filtre, là où les jointures joignent les tables.

  3. #3
    Membre confirmé
    Profil pro
    Architecte logiciel
    Inscrit en
    Avril 2004
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel

    Informations forums :
    Inscription : Avril 2004
    Messages : 40
    Par défaut
    Ok, merci pour la solution et les conseils.

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

Discussions similaires

  1. Nom de colonne double
    Par pekre dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 27/05/2015, 16h50
  2. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 12h03
  3. [SWING][JTable]Cacher noms des colonnes
    Par Antunes dans le forum Composants
    Réponses: 2
    Dernier message: 28/06/2004, 12h48
  4. Noms de colonne dans une colonne
    Par Digirom dans le forum Langage SQL
    Réponses: 14
    Dernier message: 23/04/2004, 12h51
  5. Mauvais noms de colonnes lors d'une requête
    Par nmathon dans le forum Bases de données
    Réponses: 2
    Dernier message: 09/04/2004, 08h27

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