Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
oboute
Contributor III
Contributor III

QVX_UNEXPECTED_END_OF_DATA: SQL##f - SqlState: S1000, ErrorCode: 6502, ErrorMsg: [Oracle][ODBC][Ora]ORA-06502: PL/SQL

Hello,

I receive this error since 1 day :

QVX_UNEXPECTED_END_OF_DATA:  SQL##f - SqlState: S1000, ErrorCode: 6502, ErrorMsg: [Oracle][ODBC][Ora]ORA-06502: PL/SQL : erreur numérique ou erreur sur une valeur: tampon de chaîne de caractères trop petit ORA-06512: à ligne 1

The part "tampon de chaîne de caractères trop petit" make me think about a buffer too small. When i execute the same SQL in ORACLE SQL DEVELOPER, it's Ok.

Do you have any idea ? is there some param to do with ODBC reader and buffers ?

Here is my SQL :

Select

  LEDGER_ITEM_ID,

  RTRIM(XMLAGG(XMLELEMENT(E,NOTE,',').EXTRACT('//text()') ORDER BY LEDGER_ITEM_ID).GetClobVal(),',') AS "Note"

from [MyTable]

group by

  LEDGER_ITEM_ID


I use the big function to concat field "Note" group by my LEDGER_ITEM_ID.

1 Solution

Accepted Solutions
oboute
Contributor III
Contributor III
Author

Ok I changed the way to do and it's working now !

Select

  LEDGER_ITEM_ID,

LISTAGG(NOTE, ',') WITHIN GROUP (ORDER BY LEDGER_ITEM_ID) AS "Note"

from [MyTable]

group by

  LEDGER_ITEM_ID

View solution in original post

2 Replies
oboute
Contributor III
Contributor III
Author

I found the row and i the "Note" length is about 1062 char. How/Where can i set a value for this ?

oboute
Contributor III
Contributor III
Author

Ok I changed the way to do and it's working now !

Select

  LEDGER_ITEM_ID,

LISTAGG(NOTE, ',') WITHIN GROUP (ORDER BY LEDGER_ITEM_ID) AS "Note"

from [MyTable]

group by

  LEDGER_ITEM_ID