Actuellement, je n'arrive pas à trouver la solution à un projet.
Je viens donc vers vous.
J'ai une liste de clients, sous forme d'une JTable, et quand je veux modifier un client je clique sur son nom (dans la Jtable) (ce qui revient à sélectionner une ligne) puis je clique sur Modifier.
Etant donné que tous mes clients sont dans une base de données, j'aimerais qu'un formulaire de modification s'affiche dans une autre Jframe avec, dans chaque textfiel, les données relatives au nom sélectionné précédemment.
Extraits de codes :
DAO (soit la page qui transmet mes données à la base)
public static int modifierClient(Client cli)
{
Statement traitement;
String texte;
int nb=0;
try
{
cnt = MySqlConnection.getConnection("mlr1","root",""); // pour MySql
traitement = cnt.createStatement();
texte = "Update client set ADRESSECLIENT='"+cli.getAdresse()+"', CPCLIENT='"+cli.getCp()+"', VILLECLIENT='"+cli.getVille()+"', DATENAISSANCECLIENT='"+cli.getDateNaissance()+"', NUMIDENTITE='"+cli.getNumIdentite()+"', EMAILCLIENT='"+cli.getEmail()+"' where NOMCLIENT='"+cli.getNom()+"' and PRENOMCLIENT='"+cli.getPrenom()+"'";
nb=traitement.executeUpdate(texte);
JOptionPane.showMessageDialog(null,nb+" client modifié");
cnt.close();
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,"Problème de d'accès aux données "+e.getMessage());
}
return nb;
}
DAO (affichage du client sélectionné ?)
public static Vector <Client> getUnClient(JTable cli)
{
Vector <Client> leCLIENT = new Vector <Client>();
Statement traitPrincipal;
ResultSet resClients;
try
{
cnt = MySqlConnection.getConnection("mlr1","root",""); // pour MySql
traitPrincipal = cnt.createStatement();
resClients = traitPrincipal.executeQuery("select * from client where NOMCLIENT='" + cli.getSelectedRow() + "'");
while (resClients.next())
{
System.out.println(resClients.getInt(1)+ resClients.getString(2));
Client clientA = new Client(resClients.getString(2), resClients.getString(3), resClients.getString(4), resClients.getString(5), resClients.getString(6), resClients.getString(7), resClients.getString(8), resClients.getString(9));
leCLIENT.add(clientA);
}
resClients.close();
traitPrincipal.close();
cnt.close();
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,"Problème d'accès aux données "+e.getMessage());
}
return leCLIENT;
}
Je ne suis pas sur de m'être bien expliqué ... mais je peux répondre à vos questions.
Ce n'est pas compliqué je crois, mais je n'arrive pas :
- à dire à mon formulaire d'affiche les données de la sélection
- à afficher, du coups, les données dans le formulaire
Bonjour , j'ai le même problème que popo79pr SVP veuillez nous répondre!!
j'ai un JTable qui contient une liste de contrats récupérés de la base!
je veux modifier ses données via un formulaire lors d'un Click sur un bouton Modifier .
Le formulaire de la modification doit être rempli par les données du contrat selectionné.