Bonjour a tous.
Je crée dynamiquement des requêtes SQL du genre:
update ma_table set mon_champ=? where ma_condition=?
select * from ma_table where ma_condition=?
Pour cela, j'utilise des prreparedStatement.
Une fois la compilation de la requête effectuée, j'attribut les valeurs aux ?
Seuelement j'ai un gros problème, problème que j'ai retrouvé a de multiples reprises sur différents forum:
http://forums.java.sun.com/thread.js...40698&tstart=0
J'attribut les valeurs de la manière suivante:
Seulement quand ma valeur est null, ca ne fonctionne pas dans la clause where
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if(ma_valeur != null){ ps.setObject(index, ma_valeur) } else{ ps.setNull(index, ma_valeur.type) }
(Il me fais 'where mon_champ = null' au lieu de 'where mon_champ is null' )
Du coup, ca fonctionne pas...
Ce qui ne facilite pas les choses, c'est que je sais que mes valeurs dans la clause where sont null qu'une fois que j'ai compilé la requête...
Apparement, je suis pas le seul a rencontrer ce problème...j'espère que peut être quelqu'un ici a une astuce...
Je vous remercie d'avance!
ps: je suis un peu décue que JDBC ne sache pas gérer ca...c'est bien la peine de faire des preparedstatement....
Partager