Bon je vais préciser ce qu'a déjà dit wax78 :
1)
jDateChooser1.getDate() va renvoyer la date sélectionnée.
2) quand tu fais
String.valueOf(jDateChooser1.getDate()) ça te donne la date au format texte avec un format spécial.
exemple :
Sat Oct 24 19:31:08 CEST 2015
Manque de pot, ce format est incompréhensible par Oracle !
Puisque tu fabriques ta chaîne SQL, on va continuer là-dessus sans utiliser de preparedStatement (qui aurait été la solution "approuvée")
D'abord on met la date au bon format (mettons "YYYY-MM-DD") avec SimpleDateFormat.
Ce qui donne le remplacement de ta ligne 6 par ces deux lignes :
1 2
| SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(jDateChooser1.getDate()); |
Là ta variable date contiendra
2015-10-24 au lieu de
Sat Oct 24 19:31:08 CEST 2015
Re-manque de pot, cela ne suffit probablement pour Oracle. Il faut aussi lui convertir la date (eh oui !!!)
Modifie ta requête à la ligne 15 comme suit :
ResultSet r=s.executeQuery("select first_name,last_name,HIRE_DATE from employees where HIRE_DATE = TO_DATE('"+date+"', 'YYYY-MM-DD')");
Partager