Bonjour,
Je dois coder un petit programme en PERL faisant appel à une base de données MySQL, tout ça sur un petit ordinateur portable, pas relié ni à un réseau, ni à Internet (ça complique bien les choses).
Installation d'ActivePerl et de MySQL sans problème, tout marche, j'arrive à coder des scripts et à créer des tables.
Le problème, c'est quand il faut faire le lien entre les deux.
J'ai installé DBD::mysql comme module, mais je ne sais pas si l'installation est bien faite, car n'ayant pas de connexion internet, je ne peux pas la faire par PPM. Impossible également de faire tourner le MakeFile.PL puis faire "make" et "make install" car il n'y a pas Visual dessus donc pas de fichier "make".
Impossible également d'installer Visual vu que le PC n'est pas connecté au Net...
J'ai donc copié les fichiers du dossier "lib" dans le dossier lib de Perl, mais je ne sais pas si cela suffit.
En faisant ce petit test, il m'indique bien que le module DBD::mysql est bien installé :
J'obtiens donc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 use strict use DBI; print "Modules DBD disponibles :\n"; my @available_drivers = DBI->available_drivers('quiet'); my $driver; foreach $driver (@available_drivers) { print "$driver\n"; }
Modules DBD disponibles :
CSV
DBM
ExampleP
File
Gofer
ODBC
Oracle
Proxy
SQLite
Sponge
mysql
Quand par contre je veux tester la connexion à la base de données avec ce script :
J'obtiens cette magnifique erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 use DBI; my $db = 'DBI:mysql:testbdd:localhost'; my $utilisateur = 'root'; my $motdepasse = 'root'; my $dbconnect = DBI->connect($db, $utilisateur, $motdepasse);
En regardant un peu sur le net, je me suis dit qu'il devait manquer le module DBD:river, mais impossible de le trouver quelque part...install_driver(mysql) failed: Can't locate lodable object for module DBD::mysql in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .) at (eval 4) line 3
Compilation failed in require at (eval 4) line 3.
Perhaps a module that DBD::mysql requires hasn't been fully installed at test2.pl line 21
Je commence à désespérer, si quelqu'un a une solution ou une piste, je suis preneur !
Merci d'avance à vous
Thomas
Partager