+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Nouveau Membre du Club
    Homme Profil pro
    Inscrit en
    mars 2010
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : mars 2010
    Messages : 84
    Points : 35
    Points
    35

    Par défaut Win32::ODBC connexion à MS Access

    Bonjour à tous,

    Je tente de me connecter à une base de données MS Access via un script écrit en Perl.
    Ma séquence de travail est la suivant :
    1. Installation du module avec ppm
    2. Recherche de l'orthographe exacte des drivers [Résultat--> Microsoft Acces Driver ($.mdb)]
      Code :
      1
      2
      3
      4
      5
      6
      7
      8
      9
      #!/usr/bin/perl
      use strict;
       
      use Win32::ODBC;
       
      my %drivers = Win32::ODBC::Drivers();
      foreach my $driver (sort keys %drivers){
        print "Driver = $driver\n";
      }
    3. Utilisation de la méthode ConfigDSN pour configurer ma base de données comme source de données systèmes
      Code :
      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
      #!/usr/bin/perl
      use strict;
      use Win32::ODBC;
       
      # créer une source de données ODBC
      my $DriverType = "Microsoft Access Driver (*.mdb)";
      my $DSN = "age_sup_inf_14";
      my $Description = "banque de données test";
      my $DataBase = "age_sup_inf_14.mdb";
      my $dir="c:\exo_perl_sig";
      if(Win32::ODBC::ConfigDSN(ODBC_ADD_DSN,
              $DriverType,
              ("DSN=$DSN",
              $Description,
              "DBQ=$dir\\$DataBase",
              "DEFAULTDIR=$dir",
              "UID=", "PWD="))){
        print "content-type:text/html\n\n";
        print "configuration de la source de données: $DSN effectué avec succès!\n";
      }
      else{
        print "content-type:text/html\n\n";
        print "erreur lors de la création de la source de données $DSN\n";
        Win32::ODBC::DumpError();
        die;
      }
    4. Tentative de connexion avec le script suivant :
      Code :
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      #!/usr/bin/perl
      use strict;
      #chargement du module Win32::ODBC
      use Win32::ODBC; 
       
      my $db;
       
      #ouverture de la connexion vers ma base de données
      my $DSN = "DSN=age_sup_inf_14;";
       
      if (! ($db = new Win32::ODBC($DSN))) { # création d'un objet avec vérification de la connexion
      	print "erreur lors de la liaison avec $DSN\n";
      	print "erreur: ". Win32::ODBC::Error() ."\n";
      	exit;
      }

    Lors de l'exécution de ce dernier script, j'obtiens la réponse suivante :
    erreur de liaison avec age_sup_inf_14
    erreur : [-1044] [] "[Microsoft] [Pilot ODBC Microsoft Access] Nom de fichier incorrect;"


    Je ne comprends pas pourquoi mon nom de fichier est incorrect.

  2. #2
    Nouveau Membre du Club
    Homme Profil pro
    Inscrit en
    mars 2010
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : mars 2010
    Messages : 84
    Points : 35
    Points
    35

    Par défaut

    Je suis passé à DBI avec DBD::ODBC, plus de problème.

  3. #3
    Invité régulier
    Inscrit en
    avril 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : avril 2010
    Messages : 8
    Points : 6
    Points
    6

    Par défaut

    Citation Envoyé par socaw Voir le message
    Je suis passé à DBI avec DBD::ODBC, plus de problème.
    Bonjour,

    pourrais tu ous en dire plus sur l'utilisdation ODBC ??

    cdt

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •