Bonjour,
Cela fait pas mal de temps que je planche sur le problème suivant :
Dans une procédure stockée située dans un package, je construit une requête dynamique. La construction est de la forme suivante :
Cela fonctionne chez moi en Oracle8i et Oracle9i.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 v_req := ' insert into (...) ( select ... from ... where ... and t.date1 < to_date(''' || to_char(vDate,'DD/MM/YYYY') || ''',''DD/MM/YYYY'') and t.date2 >= to_date(''' || to_char(vDate,'DD/MM/YYYY') || ''',''DD/MM/YYYY'') and ... )';
vDate est une variable globale de type DATE.
Sur un autre environnement j'ai une erreur assez sévère d'Oracle. L'erreur remontée depend de l'environnement appelant (Plus de données sur le socket pour un appel jdbc, fin de fichier sur canal de communication depuis TOAD).
Dans le fichier alert.log on a des erreurs de ce type : ORA-07445: exception encountered: core dump [] [] [] [] [] [].
Si je remplace le to_date(...) par un bête sysdate cela fonctionne.
Si je remplace vDate par une variable locale cela plante aussi.
Si j'extrait la procédure dans un fichier sql, que j'initialise mes variables globales en début de procédure et que je lance ce fichier sql, cela fonctionne.
Bref je ne comprend plus grand chose. J'ai essaye de changer mes parametres NLS_DATE_FORMAT & co chez moi pour tenter de reproduire mais sans succès.
Merci d'avance pour vos idées.
Partager