Obtenir des données CLOB dans un texte / fichier xml
Question
i ont une table dans une base de données Oracle, dans lequel l'un des champs est un champ de clob. le champ clob est d'avoir plusieurs fichiers xml. maintenant si je veux exporter ce fichier XML dans un fichier texte sur unix comment puis-je faire?
NOTE: Je n'ai pas de crapaud installé comme IUG pour le serveur et je dois utiliser uniquement l'environnement unix pour elle. pourriez-vous s'il vous plaît me dire comment faire?
La solution
En supposant que la machine que vous voulez que le fichier n'est pas le serveur de base de données elle-même, vous devriez probablement écrire un programme pour le faire. 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 point est que dans une API client de base de données moderne, aller chercher un CLOB vous retournerez automatiquement une valeur de chaîne que vous pouvez faire ce que vous voulez avec.
Autres conseils
Vous pouvez utiliser le UTL_FILE
paquet et utiliser PL / SQL pour écrire directement à partir de la base de données dans un fichier.