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

SGBD Perl Discussion :

[sgbd] Perl-DBI


Sujet :

SGBD Perl

  1. #1
    Membre du Club Avatar de perlgirl
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 123
    Points : 62
    Points
    62
    Par défaut [sgbd] Perl-DBI
    Coucou

    J'utilise le module perl-DBI pour interroger une base de données (postgresql) et traiter les données retournées par ma requete.

    J'ai consulté de nbreuses docs, sur la maniere dont on stocke les données extraites et a chaque fois il y avait tjs la solution avec "fetchrow_array" qui permet de stocker dans un tableau chaque ligne retournée par la requete...

    Cependant ma requete qui est de cette forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    my $requete = "SELECT DISTINCT prenom FROM info_personne";
     
    my $req_ex = $db->prepare($requete);
     
    $req_ex->execute();
     
    while (@res = $req_ex -> fetchrow_array) {
    print "@res\n";
    }
    En fait tous les prenoms retournés se placent dans $res[0] puisque je demande de retourner un seul element...
    $res[0] -> prenom1, prenom2, prenom3,etc...

    mais moi ca m'arrange pas car comment separer chaque prenom contenu dans la premiere case du tableau . L'ideal aurait été que chaque prenom retourné se place dans une case du tableau :

    $res[0] -> prenom1
    $res[1] -> prenom2
    $res[2] -> prenom3
    etc...

    Est ce que cela est possible :

    Perlgirl

  2. #2
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 20
    Points : 22
    Points
    22
    Par défaut
    Salut,

    tu peux faire un truc de ce style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    my $requete = "SELECT DISTINCT prenom FROM info_personne";
     
    my $req_ex = $db->prepare($requete);
     
    $req_ex->execute();
     
    while (@res = $req_ex -> fetchrow_array) {
    push @prenom, @res; 
    } 
     
    print $prenom[0];
    ensuite tu travailles sur @data

  3. #3
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794
    Par défaut
    A la limite, pour que ton bout de code soit encore plus clair, utilise carrément
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $res = $req_ex -> fetchrow
    vu que tu sais que tu n'as qu'un seul résultat par ligne.

    @+
    Mr6

  4. #4
    Membre du Club Avatar de perlgirl
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 123
    Points : 62
    Points
    62
    Par défaut
    Ok merci pour vos reponses je vais voir ce que je peux faire avec vos solutions ;-).
    Par contre il y a un truc qui m'echappe dans ta solution mat21, d'ou vient ton tableau @data dont tu me parles a la fin???

    Perlgirl

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 20
    Points : 22
    Points
    22
    Par défaut
    re,

    oui c'est vrai tu peux utiliser fetchrow.

    perlgirl, je voulais dire @prenom désolé. c'est un lapsus des notations que j'utilise habituellement

  6. #6
    Membre du Club Avatar de perlgirl
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 123
    Points : 62
    Points
    62
    Par défaut
    Merci, ca marcheuuuu

    Perlgirl

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

Discussions similaires

  1. Drivers SQL server pour Perl DBI ?
    Par panaone dans le forum SGBD
    Réponses: 14
    Dernier message: 05/05/2006, 22h29
  2. Problème d'insertion de données Perl-dbi
    Par Tygrou dans le forum SGBD
    Réponses: 5
    Dernier message: 07/04/2006, 11h20
  3. [sgbd]perl et postgres sous windows
    Par stef74 dans le forum SGBD
    Réponses: 4
    Dernier message: 23/06/2005, 13h56
  4. [sgbd] perl, oracle et caracteres speciaux
    Par fsapet dans le forum SGBD
    Réponses: 2
    Dernier message: 07/09/2004, 11h22

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