2009-12-02 6 views
0

J'ai une table dans une base de données Oracle dans laquelle l'un des champs est un champ CLOB. le champ clob a plusieurs fichiers xml. maintenant si je veux exporter ce fichier xml dans un fichier texte sur unix comment puis-je le faire? NOTE: Je n'ai aucun gui comme toad installé pour le serveur et je dois seulement utiliser l'environnement Unix pour cela.Récupère les données CLOB dans un fichier texte/xml

pourriez-vous s'il vous plaît dites-moi comment le faire?

+0

Quelle version d'Oracle? –

+0

Je reçois ORACLE 10 – Vijay

Répondre

0

En supposant que la machine sur laquelle vous voulez placer le fichier n'est pas le serveur de base de données lui-même, vous devez probablement écrire un programme pour cela. En Perl, par exemple, il est assez simple:

use DBI; 
my $db = DBI->connect('dbi:Oracle:tnsname','user','password',{RaiseError=>1}); 
my $txt = ($db->selectrow_array('select my_clob_col from my table where ...'))[0]; 
$db->close; 
open my $fh, '>out.txt' or die $!; 
print $fh $txt; 
close $fh; 

brut, mais cela fonctionnera pour les cas simples. Le fait est que dans toute API client de base de données moderne, l'extraction d'une CLOB vous renvoie automatiquement une valeur de chaîne que vous pouvez ensuite faire ce que vous voulez.

2

Vous pouvez utiliser le package UTL_FILE et utiliser PL/SQL pour écrire directement à partir de la base de données dans un fichier.

+0

Voici une page qui fait exactement cela: http://www.astral-consultancy.co.uk/cgi-bin/hunbug/doco.cgi?11070 – Rene

Questions connexes