Supprimer des dossiers en fonction de leur date de création - PL-SQL
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai des dossiers contenant des fichiers extraits d'un Datamart à l'aides de vues/procédures qui sont crées à hauteur d'une extraction quotidienne.
Dans le soucis de maîtriser la volumétrie, j'aimerai mettre en place la suppression automatique des dossiers avec la logique suivante :
Je garde les 10 dossiers les plus récents donc à partir du 11e et plus (en terme d'ancienneté) --> supprimer.
J'ai réfléchi à la solution et pour le moment je pense à ça :
--> récupérer la date de création des dossiers en passant par des xp_cmdshell 'dir .... chemin de mes dossiers' , le problème c'est que j'obtiens des détails que je ne souhaite pas avoir et toute les informations sont stockées sous une même colonne. j'aimerai n'avoir que la date de création dans une colonne et le nom des dossiers dans une autre.
--> Ensuite je pense à stocker ces informations dans une variable de type "TABLE" puis éventuellement faire quelque chose comme qui dirait "delete Nom de fichier where date création > 10. Pour supprimer tous les dossiers ayant plus de 10 jours d'ancienneté.
merci d'avance pour votre aide
J'ai des dossiers contenant des fichiers extraits d'un Datamart à l'aides de vues/procédures qui sont crées à hauteur d'une extraction quotidienne.
Dans le soucis de maîtriser la volumétrie, j'aimerai mettre en place la suppression automatique des dossiers avec la logique suivante :
Je garde les 10 dossiers les plus récents donc à partir du 11e et plus (en terme d'ancienneté) --> supprimer.
J'ai réfléchi à la solution et pour le moment je pense à ça :
--> récupérer la date de création des dossiers en passant par des xp_cmdshell 'dir .... chemin de mes dossiers' , le problème c'est que j'obtiens des détails que je ne souhaite pas avoir et toute les informations sont stockées sous une même colonne. j'aimerai n'avoir que la date de création dans une colonne et le nom des dossiers dans une autre.
--> Ensuite je pense à stocker ces informations dans une variable de type "TABLE" puis éventuellement faire quelque chose comme qui dirait "delete Nom de fichier where date création > 10. Pour supprimer tous les dossiers ayant plus de 10 jours d'ancienneté.
merci d'avance pour votre aide
A voir également:
- Supprimer des dossiers en fonction de leur date de création - PL-SQL
- Supprimer rond bleu whatsapp - Guide
- Fonction si et - Guide
- Impossible de supprimer une page word - Guide
- Impossible de supprimer un dossier - Guide
- Creation de compte google - Guide
Je ne suis pas un expert, mais je pense être restreint à l'utilisation de SQL avec éventuellement l'utilisation des commandes DOS / bash dans le cadre de mon projet.
Mes dossiers extraits quotidiennement ont un format : xxxxxx_xxx_YYYY-MM-DD