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 :

Compilation failed in require at (eval X) line X.


Sujet :

SGBD Perl

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 62
    Points : 44
    Points
    44
    Par défaut Compilation failed in require at (eval X) line X.
    Bonjour,

    Je tente de me connecter avec perl à une base mysql qui tourne sur un serveur easy PHP avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    #!C:/strawberry/perl/bin/perl.exe -w
     
    use DBI;
     
    $dbh = DBI->connect("DBI:mysql:database=bdd_woshi;host=127.0.0.1;port=3306, root, root")
      or die "Can't connect to database: $DBI::errstr\n";
     
      $sth = $dbh->prepare("SELECT * FROM thistable");
      $sth->execute();
    Quand j'execute le script, j'obtiens le message d'erreur suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Compilation failed in require at (eval 3) line 3.
     at bdd2.pl line
    La ligne 3 correspond à "use DBI;". Je pense pourtant bien avoir installé DBI et DBD. Quand j'essaie de les installer à nouveau avec ppm, j'obtiens ceci dans la console:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    PPM> install DBI
    Version 1.604 of 'DBI' is already installed.
    Remove it, or use 'verify --upgrade DBI'.
    PPM> install DBD-mysql
    Version 4.005 of 'DBD-mysql' is already installed.
    Remove it, or use 'verify --upgrade DBD-mysql'.
    Autre info, quand je fais tourner le script, j'obtiens le chiffre 5 ... Pourquoi est-ce que j'obtiens ce chiffre si le code ne compile pas ?

    Quelqu'un pourrait-il m'éclairer sur le message d'erreur et sur ce chiffre 5 ?

    Merci d'avance.

  2. #2
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut
    Moi, aussi j'utilise DBi et EasyPHP.

    A ta place, j'utiliserais
    et les pragmas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    use strict;
    use warnings;
    Essaie ce code
    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
    #!/usr/bin/perl
     
     
    use strict;
    use warnings;
     
    use DBI;
     
     
    # connexion à MySQL
    my $driver   = "mysql";
    my $server   = "localhost";
    my $database = "bdd_woshi";
    my $url      = "DBI:$driver:$database:$server";
     
    my $user = "root";
    my $password = "root";
     
    my $dbh = DBI->connect( $url, $user, $password) or die "Connection failure!\n";
     
     
    # requête 
    my $sth = $dbh->prepare("SELECT * FROM thistable") or die "Request failure\n";
    $sth->execute or die "Could not execute SQL statement\n";
    # ...
    $sth->finish;
     
     
    $dbh->disconnect();
    -- Jasmine --

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 62
    Points : 44
    Points
    44
    Par défaut
    Bonjour Jasmine,

    Merci pour ce code.
    J'ai tenté, et ce coup là j'ai le même message d'erreur, mais avec le code 8 qui s'affiche ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Compilation failed in require at (eval 3) line 3.
     at bdd3.pl line 1
    bizarre bizarre ... une idée ?
    Se pourrait-il que ppm ait installé DBI et DBD dans une autre distrib de perl que celle que j'utilise ?
    Comment puis-je le savoir ?

    merci d'avance.

  4. #4
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut
    Donc ce simple code affiche déjà une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #!/usr/bin/perl
     
     
    use strict;
    use warnings;
     
    use DBI;
    Se pourrait-il que ppm ait installé DBI et DBD dans une autre distrib de perl que celle que j'utilise ?
    Non, je ne crois pas. Essaie peut-être une mise à jour des modules ^^ ça ne peut pas faire de tort.


    Quand j'ai ce genre de problème, je fais une recherche du message d'erreur avec google.
    -- Jasmine --

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/11/2009, 10h09
  2. [RegEx] Probleme dans ma regex : Compilation failed
    Par Seb33300 dans le forum Langage
    Réponses: 6
    Dernier message: 20/08/2009, 12h04
  3. Erreur de compilation de type "multiple markers at this line"!
    Par mobi_bil dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 01/03/2009, 20h21
  4. debutant: Compile failed
    Par Krishna dans le forum ANT
    Réponses: 1
    Dernier message: 18/07/2008, 20h23
  5. Réponses: 1
    Dernier message: 10/01/2007, 11h58

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