|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Étudiant Inscription : avril 2007 Messages : 19 ![]() |
Bonjour à toutes et à tous,
Je vais vous expliquer mon problème. J'ai une table avec des mot clé (un thésaurus). Donc il y a des mots pères et d'autre fils. Chaque mot possède un identifiant, un libelle ainsi que l'identifiant de son mot père (normal jusque là). Le souçi c'est que les mots "racines" n'ont pas d'identifiant père. Donc il suffit d'insérer la valeur null dans le champs idfpere mais après moult essai j'ai été voir la FAQ JDBC et j'ai essayé ce qui étais marqué ce qui me donne comme code : Code :
cannot resolve symbol symbol : method setNull (int) location: interface java.sql.PreparedStatement stMot.setNull(2); Si vous pouviez m'aider car là je bloque sachant que j'ai essayer d'autres choses auparavant comme enregistrer la valeur NULL sans les quotes comme en PHP par exemple ... |
||
|
|
00
|
|
|
#2 |
|
Membre actif
![]() Développeur multimédia Inscription : avril 2007 Messages : 175 ![]() |
Peut être qu'en appelant tout simplement pas idfpere lors de ton insertion, ça suffirait :
Code :
"INSERT INTO CDmotcle (idf, libelle, commentaire, validation) VALUES (nextval(\'idf\'), \'"+mot+"\', \'"+commentaire+"\', \'FALSE\');" |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Étudiant Inscription : avril 2007 Messages : 19 ![]() |
Bonne idée mais j'avais déjà essayer, lorsque l'on fait ca PostgreSQL nous renvoie gentiment ce message :
ERROR: invalid input syntax for integer: "" Donc ca ne marche pas, si quelqu'un à une autre idée je suis preneur ^^. |
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() ![]() Inscription : mai 2004 Messages : 4 490 ![]() |
Bonjour,
ce ne serait pas plutôt parce que tu passes 2 à setNull() alors qu'il n'y a qu'un paramètre dans la requête paramétrée ? Ce ne devrait pas être 1 ?
__________________
FAQ XML ------------ « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser » Giacomo Leopardi |
|
|
00
|
|
|
#5 |
|
Membre actif
![]() Développeur multimédia Inscription : avril 2007 Messages : 175 ![]() |
Autant mettre -1 à la valeur integer. Tu la traites ensuite dans ton code.
|
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Étudiant Inscription : avril 2007 Messages : 19 ![]() |
GrandFather tu as raison c'est bien 1, erreur bête mais l'erreur reste la même :"
cannot resolve symbol symbol : method setNull (int) location: interface java.sql.PreparedStatement stMot.setNull(1); Je pense que je vais opter pour la solution du -1 même si j'aurai bien voulu trouver la solution pour insérer une valeur null dans un champs de type Integer. En tout merci pour vos réponse. |
|
|
00
|
|
|
#7 |
|
Membre actif
![]() Développeur multimédia Inscription : avril 2007 Messages : 175 ![]() |
Pourquoi ne pas mettre directement null dans ton SQL. Je viens de faire le test, et ça marche très bien :
Code :
"INSERT INTO CDmotcle (idf, idfpere, libelle, commentaire, validation) VALUES (nextval(\'idf\'), NULL, \'"+mot+"\', \'"+commentaire+"\', \'FALSE\');"; A+ |
|
|
00
|
|
|
#8 | ||
|
Invité régulier
![]() Étudiant Inscription : avril 2007 Messages : 19 ![]() |
Pour information sous PostgreSQL, la requête :
Code :
|
||
|
|
00
|
|
|
#9 |
|
Membre actif
![]() Développeur multimédia Inscription : avril 2007 Messages : 175 ![]() |
Où est le problème alors ?? Il suffit de remplacer ton "?" par Null dans ta variable RequeteMot étant donné que c'est un String.
Où alors j'ai pas bien saisis !!! |
|
|
00
|
|
|
#10 | ||
|
Invité régulier
![]() Étudiant Inscription : avril 2007 Messages : 19 ![]() |
Non ca ne veut vraiment pas ... je comprends pas là. La requête suivante :
Code :
Je comprends vraiment pas là ... |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com