Bonjour,
j'ai une commande sql a executer tous les jours et qui supprime la derniere données en date dans une table.
La commande est tres simple mais pas assez robuste ni securitaire
J'ai un code java qui genere un rapport dans une application, je telelcharge dans un repertoire temp et je supprimer quelque seconds plustard.
de cette face je peux voir dans la console que le rapport a bien ete crée etc...
Donc aussitot que le rapport est crée, il est aussi stocker dans une BD.
Et c'est ce rapport que je veux supprimer.
Je voudrai prendre l'heure de creation du fichier de rapport que je connais quand je telecharge le fichier et comparer avec la date ou le rapport a ete stocker
dans la BD, puis supprimer ce rapport avec son ID.
Cad obtenir la date actuelle en java puis ajouter 10s et rechercher les données entre cette plage de temps dans la BD.
Voici la table:
Je peux ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 NameId Prenom CreatedDate NameID 115 PA-TT-AA-12 10-06-10 10:35:10,308223000 100 115 PA-TT-AA-25 10-06-10 10:30:21,308223000 100 115 PA-TT-AA-98 10-06-08 10:30:21,308223000 100 115 PA-TT-AA-56 10-06-09 10:30:21,308223000 100
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 DELETE from MyTable WHERE id = (SELECT id FROM (SELECT id, row_number() OVER (ORDER BY CreatedDate desc) AS rn FROM MyTable WHERE NameID = 35) WHERE rn = 1);
Merci a vous, si vous avez des idées.
Partager