Salut,

Je rencontre une erreur bizarre avec le module DBD::SQLite.

Le code suivant passe correctement :

use DBI;
$dbh= DBI->connect("dbi:SQLite:dbname=./backup.db")|| warn $!;
$dbh->{TraceLevel} = "3|SQL";
$req='delete from logs where date not in (select date from logs order
by date desc limit 50)';
$dbh->do($req);

Mais celui-ci bloque le script :

use DBI;
$dbh= DBI->connect("dbi:SQLite:dbname=./backup.db")|| warn $!;
$dbh->{TraceLevel} = "3|SQL";
$req='delete from logs where date not in (select date from logs order
by date desc limit (select nlpurge from settings))';
# bien sûr nlpurge=50 dans la table settings
$dbh->do($req);

Par contre la requête passe correctement avec l'interpréteur :

sqlite3 mydb.sqlite "delete from logs where date not in (select date
from logs order by date desc limit (select nlpurge from settings))"

Quelqu'un aurait il une idée ?

PS: j'utilise la version 1.09 du module DBD::Sqlite

Merci d'avance.

Reply via email to