Supprimer le fichier à partir du serveur à l'aide de UTL_FILE.FRemove sans connaître le nom de fichier

Je suis un reporting analyst, qui a été demandé d'apprendre un peu PL/SQL pour automatiser certains processus. Donc, je suis presque fini, avec un pas debout dans la voie. J'ai un forfait qui

  1. Des charges d'une table avec une requête que j'ai écrit.
  2. Exporte les résultats de cette table .fichier txt sur le serveur avec la current_date cloué sur le nom de fichier .

Je suis en train de supprimer les 3 fichiers qu'il crée à l'aide d'un générique, mais je ne cesse de rencontrer des erreurs telles que "vendor_file.ia.*.txt n'est pas défini":

  • file_location est mon chemin

Je peux le supprimer sans problème avec:

    utl_file.fremove(file_location,'vendor_file.ia.09.02.2015.txt');
    utl_file.fremove(file_location,'vendor_file.il.09.02.2015.txt');
    utl_file.fremove(file_location,'vendor_file.sd.09.02.2015.txt'); 

Mais évidemment cela ne sera pas le supprimer lorsqu'il est exécuté le mois prochain. Alors suis-je raté un simple générique à la recherche juste pour " vendor_file.ia.*' Et la syntaxe de regarder dans Oracle?

Si je n'ai pas fourni suffisamment d'informations s'il vous plaît laissez-moi savoir!

Merci beaucoup!

  • Vous devez connaître le nom exact du fichier, afin de l'appeler fremove. Vous ne pouvez pas passer une wild card. Si vous n'avez pas l'esprit de certains hackery (en particulier en s'appuyant sur x$ tables), vous pouvez utiliser dbms_backup_restore pour afficher la liste des fichiers dans un répertoire davidalejomarcos.wordpress.com/2011/09/13/... Ou vous pouvez utiliser un Java procédure stockée asktom.oracle.com/pls/apex/...
  • Ma solution serait de créer une table avec deux champs 1) de nom de fichier, 2) deleted_flag. Écrire le nom de fichier de ce tableau lorsqu'il est créé, puis lorsque vous êtes prêt à supprimer le fichier de regarder pour tous les noms de fichiers qui ne sont pas marqués comme supprimés et les supprimer et marquer le record supprimée de la table.
  • ou juste un tableau avec le nom du fichier à elle. Supprimer la ligne dans la table lorsque le fichier est supprimé.
  • qui serait à l'œuvre, je pourrais pencher vers un contrôle, afin que je puisse voir quels fichiers ont été créés / supprimés, pour le débogage / traçage.
  • Merci beaucoup pour votre aide les gars! Je vais essayer de vous faire le tableau avec le nom. Le hackery peut-être hors de mes compétences.
InformationsquelleAutor Ben O'Neill | 2015-09-02