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

PostgreSQL Discussion :

Récupérer le nom de la table qui hérite [9.2]


Sujet :

PostgreSQL

  1. #1
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut Récupérer le nom de la table qui hérite
    Bonjour j'ai une table 'users' qui a 2 tables filles, j'essaie de récupérer le nom de la table fille (j'ai trouvé l'exemple sur le site postgresql) mais ça me retourne 'pg_statistic' : voici mon code dont ma requête (utilisée en java):
    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
                try {
                    String query="SELECT pg_class.relname as name, id, nickname, mail_address, last_name, first_name, phone, siren_number, date_register FROM users, pg_class WHERE cookie_code=? LIMIT 1";
                    PreparedStatement prepare=con.prepareStatement(query);
                    prepare.setString(1, cookieCode);
                    ResultSet result=prepare.executeQuery();
                    if(result.next()) {
                        relname=result.getString("name");
                        id=result.getInt("id");
                        nickname=result.getString("nickname");
                        mailAddress=result.getString("mail_address");
                        lastname=result.getString("last_name");
                        firstname=result.getString("first_name");
                        phone=result.getString("phone");
                        sirenNumber=result.getString("siren_number");
                        dateRegister=result.getString("date_register");
                    }
                } catch (SQLException ex) {
                    Logger.getLogger(User.class.getName()).log(Level.SEVERE, null, ex);
                    id=0;
                    errorMsg+=ex.getMessage();
                }
    après ça relname vaut 'pg_statistic' évidemment c'est pas ce à quoi je l'attendais.
    Merci pour vos lumières.

  2. #2
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut
    Finalement j'ai trouvé il fallait preciser l'oid de pg_class :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE users.tableoid = pg_class.oid;

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

Discussions similaires

  1. Récupérer le nom d'une table
    Par romulus67 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 07/01/2008, 13h59
  2. Une table qui hérite de deux tables
    Par kgadhi dans le forum Langage SQL
    Réponses: 6
    Dernier message: 15/11/2006, 21h47
  3. Réponses: 2
    Dernier message: 14/01/2006, 16h33
  4. Réponses: 14
    Dernier message: 14/03/2005, 09h16
  5. Récupérer le nom de ma table
    Par obione dans le forum Bases de données
    Réponses: 2
    Dernier message: 23/12/2004, 16h08

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