IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Extraire du blob vers XML


Sujet :

SQL Oracle

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 36
    Points : 25
    Points
    25
    Par défaut Extraire du blob vers XML
    Bonjour,

    Je suis en version 9.2.0.5 oracle SE.

    Je voudrais extraire d'une table oracle un champ BLOB (+ d'autres) vers un fichier XML.

    Ca ne fonctionne pas pour le BLOB !
    Avez vous des infos ou des réponses ?

    Merci

  2. #2
    Membre expérimenté
    Avatar de randriano
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 219
    Points : 1 438
    Points
    1 438
    Par défaut
    Wow, je n'ai pas encore vu l'emploi de XML sous cet angle mais je pense qu'il suffirait d'user un peu de notre matière grise:
    puisque XML c'est du textuel, il faut donc traduire le blob (le fichier binaire en général) en texte aussi => le mieux c'est le représenter en HEXADECIMAL !!!
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <blob>
    852E696C732070656E73656E74207
    5652043686576616C696572206475
    205A6F64696171756520657420447
    261676F6E2042616C6C205A20736F
    6E74206465732064657373696E732
    0616E696DE973206465206C92616E
    20323030302E0DB72020202020202
    02020496C73206E926F6E74206A61
    6D616973207675204D43475956455
    22065742073657320746F75727320
    64652070617373652D70617373651</blob>
    Le truc consiste à lire octet par octet le blob et le transferer vers xml. Bof, je ne sais pas le faire directement en 100 % PL/SQL, j'utiliserais du C++ et OCI ...
    randriano.dvp.com
    Développeur. Product Owner [Agile]. Sites web, mobile apps, système d'information (SI).

  3. #3
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    sgonzale :

    xmltype fonctionne avec du BLOB, hélas pas en 9i

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    with t as (select to_blob(hextoraw('3C582F3E')) b from dual)
    select xmltype(b,nls_charset_id('WE8ISO8859P1')) from t;
    XMLTYPE(B,NLS_CHARSET_ID('WE8ISO8859P1'))
    ----------------------------------------------
    <X/>
    randriano
    si le contenu est binaire, XML element le convertit automatiquement en hexa, pas besoin de C++ ou plsql.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    with t as (select to_blob(hextoraw('3C582F3E')) b from dual)
      select xmlelement(b,b) from t
    XMLELEMENT(B,B)
    ------------------
    <B>3C582F3E</B>
    Bon, en 9i c'est une autre histoire...

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 36
    Points : 25
    Points
    25
    Par défaut
    Merci pour vos réponses.

    En clair, le plus simple serai de migrer en 10.2 et d'utiliser les fonctions qui sont plus avancées !

  5. #5
    Membre expérimenté
    Avatar de randriano
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 219
    Points : 1 438
    Points
    1 438
    Par défaut
    En effet, je suis sous 9i mais merci laurentschneider pour ces explications: 10g et plus, on ne passe même pas par C++ ou PL/SQL, ok
    randriano.dvp.com
    Développeur. Product Owner [Agile]. Sites web, mobile apps, système d'information (SI).

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/02/2015, 10h05
  2. [OL-2010] extraire corps mail vers xml
    Par vittirivizzik dans le forum Outlook
    Réponses: 0
    Dernier message: 02/07/2012, 11h13
  3. Champ BLOB vers fichier XML
    Par pada62 dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 27/04/2011, 16h08
  4. Extraire Un BLOB vers un fichier
    Par exempleinfo dans le forum SQL
    Réponses: 6
    Dernier message: 04/06/2008, 11h31
  5. Extraire un champ BLOB vers un fichier sur le serveur
    Par ALEX77 dans le forum Firebird
    Réponses: 7
    Dernier message: 24/09/2007, 21h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo