PERL -> access DB
Résolu
kij_82
Messages postés
4089
Date d'inscription
Statut
Contributeur
Dernière intervention
-
kij_82 Messages postés 4089 Date d'inscription Statut Contributeur Dernière intervention -
kij_82 Messages postés 4089 Date d'inscription Statut Contributeur Dernière intervention -
Cette idée qui me travere l'esprit est la suivante :
Elle concerne le Perl :
Je souhaite récupérer tous les drivers installé sur ma machine pour les connexion aux DB et pour chaque driver récupéré de cette facon, je voudrais récupérer la liste des DB existantes sur ma machine.
Pour ce la, voici e script que j'ai pondu :
#!C:/Perl/bin/perl.exe
use DBI;
my @driver_names = DBI->available_drivers;
my $nbDriver = @driver_names;
printf("Nombre de driver presents : %d\n",$nbDriver);
local $i = 0;
while( $i < $nbDriver )
{
$driver_names[$i++] = lc($driver_names[$i]);
}
# selection du type de base demande :
while (<>)
{
my $driver = $driver_names[$_];
printf("Driver 1 : %s\n",$driver);
local @ary;
if( @ary= DBI->data_sources($driver) ){0
my @base =split(/:/,$ary[0]);
printf("Nom de la base : %s\n",$base[2]);
}
else{
printf("Aucune base de donnee trouvee pour ce driver\n");
}
printf("\n---------------------------------\n");
}
Le pb, c'est que ca me donne bien la liste des drivers dispo mais quand je selectionne celui pour acceder aux bases de type mysql, il me dit qu'il n'y a aucune bases mysql sur ma machine alors que j'en ai 5 qui tournent...
Bon ca fait trois jour que je me suit mis au Perl alors ca doit être bourré de fautes... si qqun peut m'aider ?
Merci à tous
++
Elle concerne le Perl :
Je souhaite récupérer tous les drivers installé sur ma machine pour les connexion aux DB et pour chaque driver récupéré de cette facon, je voudrais récupérer la liste des DB existantes sur ma machine.
Pour ce la, voici e script que j'ai pondu :
#!C:/Perl/bin/perl.exe
use DBI;
my @driver_names = DBI->available_drivers;
my $nbDriver = @driver_names;
printf("Nombre de driver presents : %d\n",$nbDriver);
local $i = 0;
while( $i < $nbDriver )
{
$driver_names[$i++] = lc($driver_names[$i]);
}
# selection du type de base demande :
while (<>)
{
my $driver = $driver_names[$_];
printf("Driver 1 : %s\n",$driver);
local @ary;
if( @ary= DBI->data_sources($driver) ){0
my @base =split(/:/,$ary[0]);
printf("Nom de la base : %s\n",$base[2]);
}
else{
printf("Aucune base de donnee trouvee pour ce driver\n");
}
printf("\n---------------------------------\n");
}
Le pb, c'est que ca me donne bien la liste des drivers dispo mais quand je selectionne celui pour acceder aux bases de type mysql, il me dit qu'il n'y a aucune bases mysql sur ma machine alors que j'en ai 5 qui tournent...
Bon ca fait trois jour que je me suit mis au Perl alors ca doit être bourré de fautes... si qqun peut m'aider ?
Merci à tous
++
A voir également:
- PERL -> access DB
- Comment ouvrir un fichier db ? ✓ - Forum Windows
- Fichier db ✓ - Forum Bases de données
- Acer quick access - Forum Logiciels
- Access runtime ✓ - Forum Access
- Db designer - Télécharger - Bases de données
12 réponses
Bon ca a changé, ca donne ca maintenant mais le probleme reste entier... snif!
#!C:/Perl/bin/perl.exe
use DBI;
# liste des drivers présents :
my @driver_names = DBI->available_drivers;
my @data_sources = DBI->data_sources("mysql", \%attr);
my $nbDriver = @driver_names;
print "Nombre de driver presents : $nbDriver\n";
foreach my $un_driver (@driver_names){
print "\nle driver: $un_driver\n";
eval { @data_sources = DBI->data_sources($un_driver);}; print "probleme avec ce driver ($un_driver)\n" if $@;
foreach my $un_db (@data_sources){
print " database: $un_db\n";
}
@data_sources =();
}
#!C:/Perl/bin/perl.exe
use DBI;
# liste des drivers présents :
my @driver_names = DBI->available_drivers;
my @data_sources = DBI->data_sources("mysql", \%attr);
my $nbDriver = @driver_names;
print "Nombre de driver presents : $nbDriver\n";
foreach my $un_driver (@driver_names){
print "\nle driver: $un_driver\n";
eval { @data_sources = DBI->data_sources($un_driver);}; print "probleme avec ce driver ($un_driver)\n" if $@;
foreach my $un_db (@data_sources){
print " database: $un_db\n";
}
@data_sources =();
}
lol, tu aimes bien te faire des posts tout seul toi :-DDDDD
promis je cours à ton secours la prochaine fois ;-)
promis je cours à ton secours la prochaine fois ;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ben fait j'ose surtout faire des remarques sur un langage que je ne connais pas... donc je vais aller l'étudier un peu, puis je reviendrais rigoler un peu ;-)
ah bon, ben bonne chance alors !
Faut dire que j'ai attaqué de suite sur les acces DB et traitements de requetes sans connaitre ce qu'était un hash...
... enfin je dit ça mais... tu verra bien! AH AH !
;)
Faut dire que j'ai attaqué de suite sur les acces DB et traitements de requetes sans connaitre ce qu'était un hash...
... enfin je dit ça mais... tu verra bien! AH AH !
;)
Ouais ben vu le temps que je viens de passer à trouver un tuto, ben c'est po gagné...
pour ceux que ça intéresse : http://www.moteurprog.com/?url=tuto_affiche.php&ID_tutorial=32
je te raconterais ça demain ;-)
pour ceux que ça intéresse : http://www.moteurprog.com/?url=tuto_affiche.php&ID_tutorial=32
je te raconterais ça demain ;-)
salut kij :-)
ben j'ai pas eu le temps de regarder finalement (l'appel de war III a été le plus fort ...)
Mais vite fait, apparement le perl est surtout costaud dans la manipulation de chaines de caratères, je me trompe ? Mais c'est un langage quand même peu utilisé...
ben j'ai pas eu le temps de regarder finalement (l'appel de war III a été le plus fort ...)
Mais vite fait, apparement le perl est surtout costaud dans la manipulation de chaines de caratères, je me trompe ? Mais c'est un langage quand même peu utilisé...