Base de données et classe PreparedStatement
Bonjour,
j'essaie de construir des méthodes pour supprimer des données dans une table et les mettre à jour sur le modèle d'une méthode pour les insérer que voici:
Code:
1 2 3 4 5 6 7 8
|
public void Insert(Personne p)throws Exception
{
PreparedStatement ps=getPreparedStatement("INSERT INTO TblPersonnes (Name,Age) VALUES (?,?)");
ps.setString(1, p.getName());
ps.setInt(2, p.getAge());
ps.execute();
ps.getConnection().close(); |
La personne p est construite dans le Main, getName et getAge pour récupérer nom et âge, et les mettre avec setInt et setString dans la table; l'instruction est ecécutée ensuite et la connexion fermée.
Maintenant mon problème est le suivant avec ce code:
Code:
1 2 3 4 5 6 7 8
|
public void Delete(Personne p) throws Exception
{
PreparedStatement del = getPreparedStatement("DELET FROM TblPersonnes WHERE Name=?");
del.execute();
del.getConnection().close();
} |
Entre PreparedStatement et del.execute(), comment récupérer le nom ou l'âge de la personne à éliminer, sachant qu'elle sera construite dans la classe Main?
Exemple:
Personne p=new Personne("Jean",15);
PersonneFactory pFactory=new PersonneFactory(new ConnectionString("jdbc:mysql://localhost/personnes", "YYYY", "XXX"));
pFactory.Delete(p);
Merci de votre aide