bonsoir les dev j'ai besoin d'une solution pour passer une date en parametre de preparedstatement
bonsoir les dev j'ai besoin d'une solution pour passer une date en parametre de preparedstatement
Salut,
Utilise la méthode PreparedStatement.setDate(int, java.sql.Date). Si tu as une un java.util.Date, il faudra le convertir par new java.sql.Date(date.getTime());. Si tu as besoin de stocker un datetime, il faudra passer par un timestamp avec PreparedStatement.setTimeStamp(int, Timestamp) (conversion par new Timestamp(date.getTime()).
Si tu as un LocalDate, ou un LocalDateTime à disposition, tu as java.sql.Date.valueOf(LocalDate) ou java.sql.Timestamp.valueOf(LocalDateTime), selon, pour faire la conversion.
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
Oui, Joël, j'ai essayé, ça coince toujours. Je t'envoie un bout de code de ma requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public List<EEcole> listEcole (Date madate){ preparedstatement ps =con.preparedstatement ("select * from table where date like ?"); ps.setDate (1,madate); ...... récupérer les données. ... }
Il faut que tu sois plus précis : "ça coince" ça ne veut rien dire. Tu as un message d'erreur ? Le résultat de la requête n'est pas celui que tu attends ? Autre ?
Par ailleurs, je ne suis pas un expert SQL, mais un like sur une date, je ne pense pas que ça puisse fonctionner. Un like c'est pour chercher des chaines qui ressemblent à une autre (avec des métacaractères, comme le % et le _). Pour les dates, on fait de la comparaison (surpérieure à ou inférieure à telle date), ou on utilise un between pour chercher dans un intervalle, etc.
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
ok merci d'avance de prendre ton temps pour me répondre..c'est justement un betwen que jutlise au faite je veux sélectionné les achats faite entre 2date mais le blem n pa côté sql plutôt c côté java.comment préparer ma req et attendre les données saisis par le client.je fait l'appli en mvc.
Ce serait donc quelque chose comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public List<EEcole> listEcole(Connnection con, java.sql.Date debut, jave.sql.Date fin){ List<EEcole> list = new ArrayList<>(); try(Preparedstatement ps = con.prepareStatement("select * from table where date between ? and ?")) { ps.setDate (1,debut); ps.setDate (2,fin); ResultSet rs = ps.execute(); while(rs.next()) { ... = rs.get...(1); ... = rs.get...(2); ... list.add(new EEcole(...)); } return list; }
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
Partager