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

PL/SQL Oracle Discussion :

DBMS Append CLOB


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut DBMS Append CLOB
    Bonjour,

    Lorsque j’exécute ce script, je ne comprends pas pourquoi je n'ai aucune modification dans la base alors que je rajoute du code HTML mon champs CLOB. Une piste?
    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
    16
    17
    18
    19
    20
     
    Connect ***********************
    SET SERVEROUTPUT ON;
    DECLARE
      dest_clob CLOB := EMPTY_CLOB(); 
      src_clob CLOB := EMPTY_CLOB();
     
    BEGIN
      SELECT SRIT_LONG_DESCRIPTION INTO dest_clob
      FROM T_ITEM
      WHERE PK_ITEM = 15666 FOR UPDATE;
     
    	 dbms_lob.APPEND(dest_clob, TO_CLOB('<p align="center"> TEST APPEND </p>'));
    	 COMMIT; 
     
    	 UPDATE T_ITEM SET SRIT_LONG_DESCRIPTION = dest_clob 
    WHERE     PK_ITEM = 15666;
    	 COMMIT;
     
    END;

  2. #2
    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
    Vous devez donner plus de détails sur ce que vous fait
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 
    Connected as mni
     
    SQL> 
    SQL> create table T_ITEM (
      2    PK_ITEM    int,
      3    SRIT_LONG_DESCRIPTION clob
      4  )
      5  /
     
    Table created
    SQL> insert into t_item
      2  values (15666, To_clob('test'))
      3  /
     
    1 row inserted
    SQL> DECLARE
      2    dest_clob CLOB := EMPTY_CLOB();
      3    src_clob CLOB := EMPTY_CLOB();
      4  
      5  BEGIN
      6    SELECT SRIT_LONG_DESCRIPTION INTO dest_clob
      7    FROM T_ITEM
      8    WHERE PK_ITEM = 15666 FOR UPDATE;
      9  
     10     dbms_lob.APPEND(dest_clob, TO_CLOB('<p align="center"> TEST APPEND </p>'));
     11     COMMIT;
     12  
     13     UPDATE T_ITEM SET SRIT_LONG_DESCRIPTION = dest_clob
     14  WHERE     PK_ITEM = 15666;
     15  	 COMMIT;
     16  
     17  END;
     18  /
     
    PL/SQL procedure successfully completed
     
    SQL> Select SRIT_LONG_DESCRIPTION
      2  From T_ITEM
      3  Where PK_ITEM = 15666
      4  /
     
    SRIT_LONG_DESCRIPTION
    --------------------------------------------------------------------------------
    test<p align="center"> TEST APPEND </p>
     
    SQL>
    Je vous suggère d'investiguer l'état de votre pointeur lob dans la base pour voir s’il est nul ou vide (empty) avant d'essayer de lui ajouter quelque chose.

  3. #3
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    En plus des remarques de mnitu sur les vides et null, n'y a-t-il pas double emploi avec le APPEND et l'UPDATE ?
    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
    16
    17
    18
    19
    20
    21
    22
    23
    DECLARE
      dest_clob CLOB := EMPTY_CLOB(); 
     
    BEGIN
        SELECT SRIT_LONG_DESCRIPTION INTO dest_clob
          FROM T_ITEM
         WHERE PK_ITEM = 15666 FOR UPDATE;
     
        dbms_lob.APPEND(dest_clob, TO_CLOB('<p align="center"> TEST APPEND </p>'));
        COMMIT; 
     
    END;
    /
     
    -- PL/SQL procedure successfully completed.
     
    SELECT SRIT_LONG_DESCRIPTION
      FROM T_ITEM
     WHERE PK_ITEM = 15666;
     
    SRIT_LONG_DESCRIPTION                                                         
    ------------------------------------------------------------------------------
    test<p align="center"> TEST APPEND </p>

Discussions similaires

  1. Réponses: 17
    Dernier message: 07/10/2004, 18h05
  2. [CLOB] Détection caractère de fin
    Par SheikYerbouti dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 26/08/2004, 17h15
  3. [DB2] conversion BLOB -> CLOB
    Par Fabien Celaia dans le forum DB2
    Réponses: 12
    Dernier message: 12/07/2004, 12h09
  4. [CLOB]Installation spéciale???
    Par DEC dans le forum JDBC
    Réponses: 5
    Dernier message: 09/07/2004, 16h08
  5. Réponses: 12
    Dernier message: 27/08/2003, 11h04

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