Salut,

je viens vous car j'ai un problème lors de l'utilisation de OCI_LobRead ou OCI_LobRead2.
J'ai un NCLOB d'environ 5000 caractères dans ma base de donnée, je n'ai eu aucun soucis pour l'insérer avec OCILIB mais j'ai une erreur "Access violation writing location" lorsque j'utilise OCI_LobRead ou OCI_LobRead2.
Je vous met en gros le code que j'utilise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
TCHAR *szTemp = new TCHAR[5001];
OCI_Lob *oClob;
oClob = OCI_GetLob(m_PrivRs, num);
OCI_LobRead(oClob, szTemp, 5000);
Si je descend le nombre de caractère à 4000 dans les paramètre de la fonction je n'ai pas de plantage mais la chaine que je récupère est tronquée.
Si je laisse à 5000 j'ai l'erreur qui est levée mais quand je break le programme, la chaine à l'air de s'être remplie quand même.
J'ai essayé avec OCI_LobRead2 mais même j'ai exactement le même résultat.
Si vous avez un piste ça m'aiderait beaucoup.

Merci d'avance