Bonjour à tous,
Je suis débutant sur Oracle (à peine un peu de SQL et de PL/SQL), et il m'a été confié un projet.
Il faudrait, depuis un ftp quelconque, arriver à rapatrier un fichier (sans doute texte) et intégrer son contenu directement dans une table, le tout se faisant au travers d'une procédure PL/SQL.
J'ai parcouru le net, et je n'ai pas trouvé la solution exacte à mon problème.
En effet, si on regarde bien les solutions proposées, elles sont:
- soit des solutions avec des fichiers locaux à transférer dans des tables (tables externes)
- soit des utilisations d'objets (CLOB)
- soit des usages de UTL_FILE mais qui sont restreints à des fichiers locaux ou sur la base
- soit des usages de UTL_TCP
(Voir pour les derniers usages le lien: http://www.oracle-base.com/articles/...PFromPLSQL.php)
Le problème c'est que dans le dernier cas, on va créer des fichiers dans la base de données... or ce n'est pas ce que je veux: je veux seulement pouvoir lire le contenu d'un fichier (texte, "formaté" pour l'usage) situé sur un FTP quelconque, et prendre à la volée ses données pour remplir une table, éventuellement transitoire (on pourra faire le tri des données après coup).
J'ai l'impression en lisant les solutions proposées qu'on en reste toujours à du fichier local qu'on va aller chercher (et je n'ai pas les droits d'administrateur...), soit à de la création de fichier dans la base oracle...
Pourriez-vous m'éclairer ?
Est-ce que quelque chose m'a échappé ?
SQLLoader ne doit pas pouvoir non plus solutionner mon problème....
Je suis donc un peu coincé.
A moins qu'il ne faille faire ça en 2 étapes:
- rapatriement des données depuis le FTP avec création d'un fichier dans la base oracle
- parcours du fichier dans la base (table externe) pour intégrer son contenu dans des tables "calibrées" ?
Merci de vos remarques.
Partager