Salut tout le monde,
J'ai un problème assez basique, n'étant pas dévelopeur, je ne comprends pas trop ce qui m'arrrive...
J'ai un script Perl sur Windows qui va faire un count sur une table MySQL en local. Si le résultat (nombre de lignes comptées) n'est pas égal à 0, il faut supprimer les lignes en questions (même clause where).
Apparement j'ai un problème, il n'interpète par le résultat du count comme un numérique ou quelque chose dans ce goût là.
Voici mon code:
J'ai le message d'erreur suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 $countrowstodelete = $dbh ->prepare(" SELECT count(*) FROM $_[0] WHERE TO_DAYS(NOW()) - TO_DAYS(eventtimestamp) > 120"); $countrowstodelete->execute; while ( ($nbcountrowstodelete) =$countrowstodelete->fetchrow() ) { print "Nombre de lignes a supprimer $nbcountrowstodelete !\n" ; } ; # Affiche le nombre de lignes à supprimer if ($nbcountrowstodelete ne '0') { $deleterows = $dbh ->prepare(" delete from transportlog WHERE TO_DAYS(NOW()) - TO_DAYS($_[1]) > $_[2]"); $deleterows->execute; print "Les lignes ont été suprimées.\n"; } else { print "Aucune ligne a supprimer \n"; # Supprime les lignes si leur nombre est différent de 0 };
Use of uninitialized value in string ne at mysql_epur_function.pl line 116.
Merci d'avance pour votre aide !
Partager