Bonjour à tous,
Je rencontre un bug lors de l'utilisation d'un script perl en interaction avec une base SQLite3.
Voici le script :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| #!/usr/bin/perl -w
use DBI;
use strict;
use Getopt::Std;
use Time::HiRes qw[gettimeofday tv_interval];
my $sql_loc = "the/path/db.db";
my $db = DBI->connect("dbi:SQLite:dbname=$sql_loc", "", "", {RaiseError => 1, AutoCommit => 1}) or die $DBI::errstr;
my $sql = "SELECT element FROM test WHERE element = ?";
my ($row) = $db->selectrow_arrayref($sql, undef, '05');
unless ($row) { die "not found in database"; }
print("$row"); |
J'obtiens l'erreur suivante :
no such table test at ligne ...
Bon, la table test existe, je peux faire la requete en ligne de commande et avec un script python, mais il faut absolument qu'il tourne en perl (contrainte du logiciel)
La base est crée avec un script python.
BDB:SQLite et DBI sont installés via cpan.
Pas d'erreur avec "DBi->connect"
Qu'en pensez vous ? Erreur de script ? Problème avec l'environnement logiciel ?
Le perl est assez obscure pour moi, il m'est difficile d’appréhender le problème.
Merci
Partager