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 :

Blob to varchar


Sujet :

SQL Oracle

  1. #1
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 97
    Par défaut Blob to varchar
    Bonjour,

    Je cherche à afficher les donnée de type blob( binary) en varchar (text).

    Le but étant de rechercher des mots qui se trouve dans le texte par la suite.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select BLOB_VALUE, BLOB_FILE_NAME, BLOB_CONTENT_TYPE from CM_PROPERTY where BLOB_FILE_NAME like '%html%';
    Blob_value est le champs blob.

    Merci d'avance pour votre aide

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 952
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 952
    Par défaut
    Pour de la recherche dans un blob regardez du côté de ORACLE TEXT

  3. #3
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 97
    Par défaut
    Merci pour ta réponse skuatamad,

    J'ai réussi à afficher le contenu en fesant un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Select UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(BLOB_VALUE, 400,1)) as TEXTBLOBL,
    BLOB_VALUE, BLOB_FILE_NAME, BLOB_CONTENT_TYPE from CM_PROPERTY where BLOB_FILE_NAME like '%html%' and TEXTBLOBL like '%css%;
    mais quand j'essaye de faire un filtre sur la variable TEXTBLOBL, j'ai une erreur :

    ORA-00904: "TEXTBLOBL": invalid identifier
    00904. 00000 - "%s: invalid identifier"
    *Cause:
    *Action:
    Erreur à la ligne 2, colonne 102

    Question : comment faire mon condition?

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 132
    Par défaut
    Les colonnes issues d'expressions calculées dans la clause SELECTne peuvent pas être utilisées directement danS la clause WHERE.
    Deux solutions :
    1. Répeter l'expression dans la clause WHERE
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      SELECT  utl_raw.cast_to_varchar2(dbms_lob.substr(blob_value, 400,1)) AS textblobl
          ,   blob_value
          ,   blob_file_name
          ,   blob_content_type
      FROM    cm_property 
      WHERE   blob_file_name LIKE '%HTML%' 
          AND utl_raw.cast_to_varchar2(dbms_lob.substr(blob_value, 400,1)) LIKE '%CSS%
      ;
    2. Faire la requête en deux étapes
      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
      WITH    cnv
          AS  (   SELECT  utl_raw.cast_to_varchar2(dbms_lob.substr(blob_value, 400,1)) AS textblobl
                      ,   blob_value
                      ,   blob_file_name
                      ,   blob_content_type
                  FROM    cm_property 
                  WHERE   blob_file_name LIKE '%HTML%' 
              )
      SELECT  textblobl
          ,   blob_value
          ,   blob_file_name
          ,   blob_content_type        
      FROM    cnv
      WHERE   textblobl LIKE '%CSS%
      ;
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Citation Envoyé par tamildark Voir le message
    Bonjour,

    Je cherche à afficher les donnée de type blob( binary) en varchar (text).

    Le but étant de rechercher des mots qui se trouve dans le texte par la suite.
    Commencez par transformer le blob en clob via DBMS_LOB.CONVERTTOCLOB.

  6. #6
    Membre confirmé
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 97
    Par défaut
    Merci pour votre aide.

    J'ai réussi à faire ma requête.

    @mnitu : quel est l'avantage de convertir en Clob ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Choix entre un varchar ou un blob
    Par sevyc64 dans le forum Firebird
    Réponses: 11
    Dernier message: 14/03/2015, 11h56
  2. RichView inclure texte formaté dans un champ varchar ou blob
    Par seabs dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 21/11/2009, 08h38
  3. VARCHAR vers BLOB
    Par Anubis dans le forum Administration
    Réponses: 0
    Dernier message: 03/08/2009, 16h16
  4. blob vers varchar
    Par ypicot dans le forum Oracle
    Réponses: 4
    Dernier message: 08/11/2006, 21h56
  5. debutant - "question de cours" VARCHAR et BLOB
    Par le_chainon_manquant dans le forum Débuter
    Réponses: 6
    Dernier message: 27/06/2006, 11h47

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