Bonjour,
Là je ne comprends pas vraiment ce que tu cherches à faire
Tu calcules une date dans ton programme
date = datetime.datetime.now().replace(microsecond=0).isoformat()
cela te donne la date du jour en format ISO mais cette variable reste dans ton programme et n'est pas propagée dans ta requête.
puis tu passes ta requête
DELETE FROM vivarium_test_table WHERE date = DATE("NOW", "-3 months")
Mais dans ta requête la date c'est une colonne dans ta base de données (pas celle que tu as calculé auparavant). De plus DATE est un mot réservé de SQL ce qui fait que cela risque de poser des problèmes (pour SQLITE utiliser [DATE] si la colonne a été nommée date). Mais à voir tes remarques as tu une colonne qui donne la date d'insertion dans ta base? Si oui, c'est le nom de cette colonne que tu dois indiquer, si non, ton problème est impossible il te faut ajouter une colonne date d'insertion dans ta base pour pouvoir effacer les lignes insérées avant une certaine date.
NB Au vu de tout ceci, le calcul de la variable date dans python est elle encore nécessaire?
Cordialement
Partager