Exception lancée alors que ça devrais passer ! [Java] - Programmation
Marsh Posté le 17-06-2002 à 11:34:48
C'est quoi l'exception. Tu te boolayétise?
Marsh Posté le 17-06-2002 à 11:39:54
aaaah, lala....La boulayétisation du lundi matin, quelque part, je comprends un peu, Dark, sois indulgent! D
Marsh Posté le 17-06-2002 à 11:40:29
2 secondes, je suis en train de voir un truc.
En fait, je gère mal mes exception; ça fait que je récupérais pas la SQL Exception, d'ou, une message d'erreur pas explicite.
Mais là, je viens de voir la SQLExecption que me rend le getString(1);
SQLState : S1002
Message : Index de descripteur non valide
ça veut dire quoi ça !?
Marsh Posté le 17-06-2002 à 11:42:58
Montre tout le code qui gère la query + vérifie le contenu de ta DB + verfie tes fichiers de conf pour te loguer à la bd
Marsh Posté le 17-06-2002 à 11:44:21
c koi la strcuture de ta première colonne? Si c'est pas une string ou équivalent c'est normal ...
Marsh Posté le 17-06-2002 à 11:48:51
Tout de suite monsieur Dark :
Dans ma classe:
Code :
|
Dans une méthode:
Code :
|
Méthode initFromResultSet:
Code :
|
Quand j'execute dans un analyseur SQL, la requête:
select * from UTILISATEURS where (UTIL='MC';
ça me rend bien mon enregistrement.
Quand, par mon prog, je remplace le contenu de sqlQuery, pour y mettre : "select * from UTILISATEURS"
le getString(1); passe sans pb, donc ma connection est OK !
Marsh Posté le 17-06-2002 à 11:51:39
lorsque tu fais rs.next() pour la première fois, si ca te retourne true ce sera TOUJOURS le premier élément (inutile de faire isFirst())
Tu as l'exception sur quelle ligne?
Ouvre MySQL ou SQLPlus ou je sais pas quoi et lance la query a la mano pour voir le résultat
arrête de m'appeler monsieur
Marsh Posté le 17-06-2002 à 11:54:24
DarkLord a écrit a écrit : lorsque tu fais rs.next() pour la première fois, si ca te retourne true ce sera TOUJOURS le premier élément (inutile de faire isFirst()) Tu as l'exception sur quelle ligne? Ouvre MySQL ou SQLPlus ou je sais pas quoi et lance la query a la mano pour voir le résultat arrête de m'appeler monsieur |
J'ai édité mon, message: g déja exécuté à la main ! c ok.
(pour le isFirst, je m'en doutais, ms ça coute rien. Enfin, maintenant que je suis sur, je l'enlève !)
Marsh Posté le 17-06-2002 à 11:56:43
DarkLord a écrit a écrit : lorsque tu fais rs.next() pour la première fois, si ca te retourne true ce sera TOUJOURS le premier élément (inutile de faire isFirst()) Tu as l'exception sur quelle ligne? Ouvre MySQL ou SQLPlus ou je sais pas quoi et lance la query a la mano pour voir le résultat arrête de m'appeler monsieur |
l'exception est dès que j'essaye de récupérer qqch depuis mon ResultSet.
que ça soit un rs.getString(1), un rs.getString("UTIL" ), un getString(2), ou autre, ça merde !
le ResultSet que je récupère depuis mon executeQuery est bisard je crois !
Marsh Posté le 17-06-2002 à 11:59:48
balance le script SQL que tu as utilisé pour créer ta table
Marsh Posté le 17-06-2002 à 12:04:31
DarkLord a écrit a écrit : balance le script SQL que tu as utilisé pour créer ta table |
tout bête:
Code :
|
Marsh Posté le 17-06-2002 à 12:05:31
si tu peux mettre des () là. De toutes façons il a fait la query a la mano et ca a renvoyé le bon résultat
enfin c'est ce qu'il dit
Marsh Posté le 17-06-2002 à 12:05:46
greg@freestarthu a écrit a écrit : je suis pas convaincu que les () soit correctes là: select * from UTILISATEURS where (UTIL='MC'); ? |
ça passe dans l'interpréteur SQL de SQLServer, et j'ai déja essayé sans...
Marsh Posté le 17-06-2002 à 12:05:57
greg -> Ignoble fanfaront tu as effacé ton post?
Marsh Posté le 17-06-2002 à 12:06:16
oh le petit vilain
Marsh Posté le 17-06-2002 à 12:06:39
DarkLord a écrit a écrit : si tu peux mettre des () là. De toutes façons il a fait la query a la mano et ca a renvoyé le bon résultat enfin c'est ce qu'il dit |
ha, non, commences pas !
Je suis pas un noeu-noeud. Je sais faire une requête SQL !
Marsh Posté le 17-06-2002 à 12:06:49
DarkLord a écrit a écrit : greg -> Ignoble fanfaront tu as effacé ton post? |
oué je me suis rendu compte de la connerie de ce que je disais
Marsh Posté le 17-06-2002 à 12:07:30
par contre déjà je mettrai pas le *, je specifierai les colonnes dans la requete
mais bon ça n'a rien à voir non plus
Marsh Posté le 17-06-2002 à 12:07:33
DarkLord a écrit a écrit : greg -> Ignoble fanfaront tu as effacé ton post? |
m'en fout, je l'ai serré qd même ! il est gravé dans ma réponse à son post !
Marsh Posté le 17-06-2002 à 12:07:50
greg@freestarthu a écrit a écrit : par contre déjà je mettrai pas le *, je specifierai les colonnes dans la requete mais bon ça n'a rien à voir non plus |
pourquoi !? vu que je veux toutes les colones, pourquoi m'emmerder à tt taper !?
Marsh Posté le 17-06-2002 à 12:09:09
el_gringo a écrit a écrit : pourquoi !? vu que je veux toutes les colones, pourquoi m'emmerder à tt taper !? |
pour etre sur de les avoir dans le bon ordre pardi
(surtout que tu fais des getString(i) ...)
Marsh Posté le 17-06-2002 à 12:12:31
greg@freestarthu a écrit a écrit : pour etre sur de les avoir dans le bon ordre pardi (surtout que tu fais des getString(i) ...) |
Marsh Posté le 17-06-2002 à 12:13:17
greg@freestarthu a écrit a écrit : pour etre sur de les avoir dans le bon ordre pardi (surtout que tu fais des getString(i) ...) |
T'as raison, c'est fait !
Par contre, ça n'arrange pas mon problème !
Marsh Posté le 17-06-2002 à 12:16:07
envoie un peu la stacktrace stp
Marsh Posté le 17-06-2002 à 12:24:05
DarkLord a écrit a écrit : envoie un peu la stacktrace stp |
la stack trace de l'execution de mon prog ? Je la trouve ds netbean ? (j'utilise jammais ça, ça sert à quoi !??)
Marsh Posté le 17-06-2002 à 12:25:34
dans ton catch machin chose là tu ajoute
e.printStackTrace();
et tu copy-paste ce que la console recrache à l'exécution
Marsh Posté le 17-06-2002 à 12:25:58
DarkLord a écrit a écrit : dans ton catch machin chose là tu ajoute e.printStackTrace(); et tu copy-paste ce que la console recrache à l'exécution |
avant de faire ton throw machin chose
Marsh Posté le 17-06-2002 à 12:30:21
ça !?
Code :
|
ça peut t'être utile !?
Marsh Posté le 17-06-2002 à 12:32:10
el_gringo a écrit a écrit : ça !? ça peut t'être utile !? |
ben oui )
Marsh Posté le 17-06-2002 à 13:35:15
y a quoi a la ligne 195 de ton code?
Marsh Posté le 17-06-2002 à 13:37:11
el_gringo a écrit a écrit : ça !? ça peut t'être utile !? |
Je trouve que tu poses des questions vraiment bizarres parfois. Oui c'est utile, surtout qd t'as un problème (en tout cas moi c'est la première chose que je regarde.
Marsh Posté le 17-06-2002 à 14:00:30
DarkLord a écrit a écrit : Je trouve que tu poses des questions vraiment bizarres parfois. Oui c'est utile, surtout qd t'as un problème (en tout cas moi c'est la première chose que je regarde. |
Bah, je dis ça parce que les seuls renseignements qui me paraissent utiles la dedant, je vous les avaient déja donnés, à savoir:
le message de l'exception : Index de descripteur non valide
le moment ou ça se passe : au premier getString de mon ResultSet (ligne 195)
Marsh Posté le 17-06-2002 à 14:15:41
Citation : What is an Invalid Descriptor Index? |
(http://www.tconsult.com/developer/descriptor.asp)
Marsh Posté le 17-06-2002 à 14:37:12
essaie de remplacer tes getString() par getObject()
Marsh Posté le 17-06-2002 à 14:38:40
DarkLord a écrit a écrit : essaie de remplacer tes getString() par getObject() |
marche seulement avec un driver jdbc 2.0 compliant
Marsh Posté le 17-06-2002 à 14:39:47
HappyHarry a écrit a écrit : marche seulement avec un driver jdbc 2.0 compliant |
'faut que je reste compatible avec un maximum de drivers.
Marsh Posté le 17-06-2002 à 14:40:22
greg@freestarthu a écrit a écrit :
(http://www.tconsult.com/developer/descriptor.asp) |
Merci. J'y ai cru un moment, ms ça ne venait pas de ça.
Marsh Posté le 17-06-2002 à 14:44:06
ça y est, ça marche.
Vous allez pas me croire tellement c bisard. Moi même g vachement du mal à y croire, ms maintenant, c sur. Je vous jure, je suis pas trop du genre à affirmer qqch, sans avoir vérifié 50 fois.
Quand mon ResultSet s'appel "rs" , ça merde.
Si je l'appel autrement ("res" ), que je recompile, et que je relance, ça marche !!!
Qqn y comprend qqch !??
Marsh Posté le 17-06-2002 à 11:31:51
J'comprend pas...
Je fais le truc suivant:
Qqn voit ce qu'il se passe ?
(je suis sur qu'il existe dans ma table, un enregistrement où UTIL est à "MC"...)
Message édité par El_gringo le 17-06-2002 à 11:32:20