CodeS-SourceS
Rechercher un code, un tuto, une réponse

Utilisation des PreparedStatement

Octobre 2017

Les PreparedStatement sont des requêtes SQL paramétrées.

Les instructions SQL des instances de PreparedStatement contiennent un ou plusieurs paramètres d'entrée, non spécifiés lors de la création de l'instruction. Ces paramètres sont re présentés par des points d'interrogation(?). La requête peut alors être :
select count(*) from table where annee=? and mois=?


Ces paramètres doivent être spécifiés avant l'exécution. Pour cela, on créé un PreparedStatement sur lequel on utilise la méthode setString ou setInt pour préciser la manière dont on souhaite remplacer le "?". Le premier setXXX effectué remplace le premier "?", le second setXXX effectué remplace le second"?", etc.

Exemple :

/* Création de la requête paramétrée */
private String REQUETE="select count(*) from table where annee=? and mois=?";

/* On créé une connexion, dans cet exemple insee-config est utilisé */
Connection connection=InseeConfig.getConnection("application");
PreparedStatement stmt;
try {
stmt = connection.prepareStatement(REQUETE);
/* Le premier ? est remplacé par '2015' */
stmt.setString(1, "2015");
/* Le second ? est remplacé par 'Février' */
stmt.setString(2, "Février");
ResultSet rs = stmt.executeQuery();
/* Suite du traitement */
}
catch (SQLException e) {
log.error(e);
}
Publié par cs_Julien39.
Ce document intitulé «  Utilisation des PreparedStatement  » issu de CodeS-SourceS (codes-sources.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Ajouter un commentaire

Commentaires

Donnez votre avis
Lancement d'un commande avec Runtime.exec()
Java et le bytecode : comprendre le résultat de vos compilations