|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Bonjour,
J'utilise un ETL pour transferer des données d'un serveur Sybase à un autre. Pour indiquer que le traitement s'est bien passé, j'execute une procédure stockée. Cette procédure plante avec le message d'erreur suivant: Code :
0 : JZ0P1 : java.sql.SQLException: JZ0P1: Type de résultat inattendu.
Quelq'un a t il deja eu ce genre de soucis? Merci d'avance |
|
|
00
|
|
|
#2 |
![]() ![]() |
A priori cela voudrait dire que le code Java n'est pas écrit pour traiter certains type de résultats (p.ex. le "status result" qui est renvoyé par la proc stockée).
Si tu es en 12.5.1 ou plus récent tu pourrais essayer de positionner l'option "proc_return_status" à off pour la connexion: Michael
__________________
Michael Peppler Membre de TeamSybase - www.teamsybase.com "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson |
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Les résultats sont identiques en mettant cette variable à OFF.
Quand j'utilise un client qui lui meme utilise le meme driver JDBC que celui du logiciel, la procédure s'execute correctement également. Donc a priori je peux écarter le probleme du driver. C'est étonnant que cela ne s'applique qu'à cette procédure, les autres s'executent correctement. Les retours qu'effectue la proc sont: A priori dans le cadre ou je l'execute le retour est 0, ce qui ne me semble pas un résultat compliqué à traiter... La j'avoue que je vois po bien comment m'en sortir |
|
|
00
|
|
|
#4 |
![]() ![]() |
Est-ce que la procédure comporte du SQL qui inclus des COMPUTE BY ?
Si la proc n'est pas immense tu pourrais peut-être la poster ici pour qu'on analyse le problème ? Une autre possibilité est de mettre en place Ribo pour analyser le flux entre le client et le serveur et pour voir quelle type de résultat genère ce problème. Michael
__________________
Michael Peppler Membre de TeamSybase - www.teamsybase.com "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson |
|
|
00
|
|
|
#5 | |
![]() ![]() |
Voici la documentation de ce message d'erreur:
Citation:
Michael
__________________
Michael Peppler Membre de TeamSybase - www.teamsybase.com "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson |
|
|
|
00
|
|
|
#6 | ||||
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Voici la procédure :
Code :
Pour exemple je vous met une de celles qui marche correctement: Code :
A priori j'avais deja vu la doc associée à cette erreur, mais je ne peux pas établir le mode debug. En effet mon SQL est inclus dans du JAVA via l'outil que j'utilise De meme j'ai pas l'impression qu'il y ait du compute Merci pour votre aide |
||||
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Je suis pas sur que ribo me soit utile.
En effet j'ouvre une connexion avec une base, j'execute une procédure. Je ne fait rien d'autre, de plus le retour de la procédure ne m'interesse pas... |
|
|
00
|
|
|
#8 | ||
![]() ![]() |
A mon avis le problème est ici:
Code :
Michael
__________________
Michael Peppler Membre de TeamSybase - www.teamsybase.com "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson |
||
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Je teste ca (faut que je demande la permission au client avant) et je vous tiens au courant...
Si ca n'est que ca, ca devrait bien se passer Merci |
|
|
00
|
|
|
#10 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Bon alors je pense que je suis devant un cas particulierement cosmique!
En fait il existe deux soucis distincts: le premier venait que Sybase est capable d'interpréter "" comme un blanc mais quand c'est lancé via mon logiciel il interprete ca comme un nom de colonne. Ce qui entrainait une non mise à jour de ma table résultat: voir code ci dessous Code :
le second soucis est celui détécté précédemment a savoir que quand le code est executé par mon ETL alors il y a un message d'erreur mais c'est non bloquant(voir message d'erreur de départ) Pour résoudre ce soucis j'ai essayé de virer le SELECT comme indiqué au dessus mais le problème reste le meme. (ca entraine meme un autre soucis à savoir que l'affectation juste en dessous ne marche plus) Donc je vais essayer de trouver d'ou ca peut venir sauf si notre tres cher administrateur (super spécialiste mickael) le trouve avant moi La suite tres bientot |
||
|
|
00
|
|
|
#11 |
![]() ![]() |
L'interprétation de "" comme un nom de colonne vient de l'option "quoted_identifiers" qui est visiblement positionnée à "on". Dans cette situation les doubles quotes sont utilisées pour entourer les noms de colonnes, etc. pour les différentier des noms réservés, et il faut utiliser les simples quotes '' pour la les chaines de charactères.
Par contre pour ton autre problème je ne vois pas vraiment... Michael
__________________
Michael Peppler Membre de TeamSybase - www.teamsybase.com "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson |
|
|
00
|
|
|
#12 |
|
Nouveau Membre du Club
![]() Inscription : février 2006 Messages : 107 ![]() |
Alors en fait le probleme vient de la procédure imbriquée: REPLACE.
En effet cette procédure effectue des SELECT (pb identifié grace à ton post précédent) que le logiciel d'ETL ne sait pas quoi faire. Du coup en les retirant tout simplement, le logiciel d'ETL ne met plus d'erreurs. Dans le cas ou les select se font dans la procédure executée, le probleme ne se pose pas. J'espere avoir été clair. Merci beaucoup pour ton aide Mickael, en tous cas les pistes étaient toutes bonnes... donc bravo |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com