Bonjour,
J'ai une table déclarée ainsiet peuplée de quelques milliers de lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 CREATE TABLE XSOURCE ( ID_OBJ INTEGER NOT NULL, LC_DOC VARCHAR2(105 BYTE), OB_DOC CLOB)
La colonne en CLOB contient normalement du XML.
J'ai une autre tableque je souhaite alimenter par le contenu de la 1ère:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 CREATE TABLE XCIBLE ( ID_OBJ INTEGER NOT NULL, LC_DOC VARCHAR2(105 BYTE), XML_DOC SYS.XMLTYPE)Mais, j'obtiens cette erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 INSERT INTO XCIBLE ( ID_OBJ, LC_DOC, XML_DOC) ( SELECT ID_OBJ, LC_DOC, XMLTYPE(OB_DOC) FROM XSOURCE)Le caractère 156 correspond a priori à £ (livre anglaise).ORA-31011: Echec d'analyse XML
ORA-19202: Une erreur s'est produite lors du traitement la fonction XML (
LPX-00216: invalid character 156 (0x9C)
Error at line 33
)
ORA-06512: à "SYS.XMLTYPE", ligne 0
ORA-06512: à ligne 1
Je n'avais qu'une ligne contenant ce caractère; je l'ai supprimé.
La requètem'avait permis de trouver cette ligne, mais ne sélectionne plus rien maintenant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT ID_OBJ, LC_DOC, OB_DOC FROM XSOURCE WHERE OB_DOC LIKE '%£%'
Pourtant l'erreur persiste
Quelqu'un a t-il une idée, une solution ?
Je suis sous Oracle 9.2
![]()
Partager