Cela se produit lors de l'extraction de valeurs d'une longueur maximale de 50 dans un tampon qui ne peut contenir que 30 caractères.ora-01406 Erreur lors de l'extraction des valeurs à l'aide de l'OCI
J'ai déjà recherché l'erreur et trouvé une solution possible, qui est d'étendre la taille du tampon auquel la valeur est liée.
Le problème est que cela se produit uniquement dans certains de nos systèmes et pas dans d'autres. Est-ce que la version Oracle a quelque chose à voir avec ça? Si oui, quelle est la version dans laquelle cette erreur a été changée?
Les versions Oracle que nous utilisons sont 10.2.0.1 et 10.2.0.3
Nous allons le réparer. Mais dans un environnement de production, ne pas être capable de recréer un bogue est un problème critique qui doit être résolu et résolu afin d'éviter que de telles erreurs ne se reproduisent. Cela a été classé comme un bug dans Oracle (bug 4546618), ce qui conduit à une confusion supplémentaire quant à l'endroit exact où le correctif devrait avoir lieu. Corriger le bug est important mais nous sommes plus préoccupés par la prévention à long terme. – Gayan
OK, mais je suis curieux: que fait Oracle 10.2.0.3 maintenant - tronquer silencieusement la valeur à 30 caractères? Je voudrais que ce soit pire? –
Le problème réside dans le fait que je donne la longueur de la chaîne lorsque je définis des valeurs pour le curseur. Désolé de ne pas le mentionner dans la question initiale. Quoi qu'il en soit, la valeur dans la base de données devrait être tronquée à cette longueur, ce qui ne semble pas arriver dans 10.2.0.1. – Gayan