Module DBD::XBASE

Le
Patrick
J'utilise le module DBD:XBASE pour pouvoir extraire les données d'un
DBF.Voici un exemple que j'ai trouvé dans le site de CPAN:

use DBI;
my $dbh = DBI->connect("DBI:XBase:/directory/subdir")
or die $DBI::errstr;
my $sth = $dbh->prepare("select MSG from test where ID != 1")
or die $dbh->errstr();
$sth->execute() or die $sth->errstr();

my @data;
while (@data = $sth->fetchrow_array())
{ ## further processing }

$dbh->do('update table set name = ? where id = 45', {}, 'krtek');
Dans cette exemple, on fait un select dans un dbf mais mon probleme est
que comment devine-t-on la table (ici test).Et est ce que la notion de
table existe en dbf?
Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
espie
Le #18748741
In article Patrick
$dbh->do('update table set name = ? where id = 45', {}, 'krtek');
Dans cette exemple, on fait un select dans un dbf mais mon probleme est
que comment devine-t-on la table (ici test).Et est ce que la notion de
table existe en dbf?



Si tu lis aussi la doc de XBase, il semblerait bien que ca soit implemente
comme DBD::CSV, a savoir que chaque "table" correspond a un fichier dbf
separe.

J'ai l'impression qu'il suffit de regarder dans le repertoire pour en deduire
le nom des tables, simplement en enlevant le suffixe .dbf a chaque fois.
Patrick
Le #18751201
Marc Espie wrote:
In article Patrick
$dbh->do('update table set name = ? where id = 45', {}, 'krtek');
Dans cette exemple, on fait un select dans un dbf mais mon probleme est
que comment devine-t-on la table (ici test).Et est ce que la notion de
table existe en dbf?



Si tu lis aussi la doc de XBase, il semblerait bien que ca soit implemente
comme DBD::CSV, a savoir que chaque "table" correspond a un fichier dbf
separe.

J'ai l'impression qu'il suffit de regarder dans le repertoire pour en deduire
le nom des tables, simplement en enlevant le suffixe .dbf a chaque fois.


Merci pour ton aide Marc.
Publicité
Poster une réponse
Anonyme