Aloha,
Je souhaite pouvoir lister les fichiers jpg, png et gif, présents dans une arborescence afin de comparaison avec les valeurs d'un champ de plusieurs tables de ma base de données.
J'ai lu plusieurs article sur cette question puis suis tombé sur deux plus intéressants :
http://www.oracle-developer.net/display.php?id=513
et http://www.oracle.com/technetwork/is...da-312277.html
Aussi ai-je testé ceci, connecté en admin :
Mon fichier lister_fichier.bat contient les lignes suivantes :
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
20
21
22
23
24
25
26
27
28
29
30
31
32 CREATE DIRECTORY xt_dir AS '\\Srvwebsig\apic47data\eau\multimedia'; CREATE DIRECTORY bin_dir AS '\\Srvwebsig\apic47data\eau\multimedia'; /*GESTION DES DROITS*/ GRANT READ, WRITE ON DIRECTORY xt_dir TO GDU; GRANT READ, WRITE ON DIRECTORY bin_dir TO GDU; /*CREATION D'UNE TABLE EXTERNE*/ CREATE TABLE fichiers_xt (date_fichier VARCHAR2(50) , heure_fichier VARCHAR2(50) , taille_fichier VARCHAR2(50) , nom_fichier VARCHAR2(255) ) ORGANIZATION EXTERNAL ( TYPE ORACLE_LOADER DEFAULT DIRECTORY xt_dir ACCESS PARAMETERS ( RECORDS DELIMITED BY NEWLINE LOAD WHEN taille_fichier != '<DIR>' PREPROCESSOR bin_dir: 'lister_fichier.bat' FIELDS TERMINATED BY WHITESPACE ) LOCATION ('test_liste.txt') ) REJECT LIMIT UNLIMITED;
Mais lorsque je fais un select sur ma table externe, j'ai ceci comme erreurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2@echo off dir /s
Je me pose donc les questions suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 ERREUR Ó la ligne 1 : ORA-29913: erreur d'exÚcution de l'appel ODCIEXTTABLEOPEN ORA-29400: erreur de cartouche de donnÚes KUP-00554: error encountered while parsing access parameters KUP-01005: syntax error: found "identifier": expecting one of: "and, badfile, byteordermark, characterset, column, data, delimited, discardfile, disable_directory_link_check, exit, fields, fixed, load, logfile, language, not, nodiscardfile, nobadfile, nologfile, date_cache, or, processing, readsize, string, skip," KUP-01008: the bad identifier was: PREPROCESSOR KUP-01007: at line 3 column 7 ORA-06512: Ó "SYS.ORACLE_LOADER", ligne 19
- pourquoi ces erreurs ?
- un chemin en '\\srvwesbig\...' est-il compatible avec un DIRECTORY ?
- peut-on lister les fichiers d'une arborescence présente dans un serveur windows différente du serveur UNIX sur lequel la base Oracle est installée ?
- est-ce possible de créer des vues construites sur un select de la table fichiers_xt avec en paramètre le nom de la racine de l'arborescence afin de "monitorer" plusieurs arborescences ?
Merci d'avance, et bonne année 2013, les oracles la prédisent chouette !
PS. Je ne savais pas s'il fallait déposer cette question dans la section administration.
Partager