Hi zusammen,
Ich habe in einer DB2 Tabelle in einem CLOB XMLS abgelegt.
Die haben Sektionen die 1...n mal vorkommen und varieren daher in der grösse.
Nun möchte ich den "Core Payload" extrahieren.
Mache ich folgendermassen:
Das Problem ist dass das von der Startpostition immer passt, aber die ENDPOSITION variert.
In einem Fall habe ich nach dem myTextEnd noch 91(!) Zeichen zuviel....
Ich weiss nicht ob es ev irgendwie an Umlauten / Codepage etc liegen kann?
Auffällig ist, dass die von DB2 errechneten Position NICHT mit der Postion des Zeichens in Notepad++ zusammenpassen.
(auch die Startposition nicht aber da klappt es immer)
Ach ja ich habe auch mit INSTR(DATAXML, 'myTextEnd', -1) versucht, wie erwartet selbes Resultat....
meconfused
Ich habe in einer DB2 Tabelle in einem CLOB XMLS abgelegt.
Die haben Sektionen die 1...n mal vorkommen und varieren daher in der grösse.
Nun möchte ich den "Core Payload" extrahieren.
Mache ich folgendermassen:
Code:
(SUBSTRING(ct.DATAXML, (LOCATE('myTextStart',ct.DATAXML)), ((LOCATE( 'myTextEnd', ct.DATAXML)) - (LOCATE('myTextStart">',ct.DATAXML)) )) )
Das Problem ist dass das von der Startpostition immer passt, aber die ENDPOSITION variert.
In einem Fall habe ich nach dem myTextEnd noch 91(!) Zeichen zuviel....
Ich weiss nicht ob es ev irgendwie an Umlauten / Codepage etc liegen kann?
Auffällig ist, dass die von DB2 errechneten Position NICHT mit der Postion des Zeichens in Notepad++ zusammenpassen.
(auch die Startposition nicht aber da klappt es immer)
Ach ja ich habe auch mit INSTR(DATAXML, 'myTextEnd', -1) versucht, wie erwartet selbes Resultat....
meconfused