Bonjour
Je suis un débutant en Java. Je voudrais récuperer la valeur d'un Resultset pour remplir un JTextField.
Pour le moment je n'ai pas trouvé le bon chemin
SVP aidez moi
Bonjour
Je suis un débutant en Java. Je voudrais récuperer la valeur d'un Resultset pour remplir un JTextField.
Pour le moment je n'ai pas trouvé le bon chemin
SVP aidez moi
bonjour,
Tout est dans la faq JDBC
Il n'y a pas de problème, il n'y a que des solutions.
Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran
Mes Articles : Mon premier article est sur le language D
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Regarde un tuto sur JDBC...
Dans le principe :
1) on créé un objet Connection
2) on créé un objet Statement avec l'objet Connection
3) on récupère un ResultSet avec le Statement
4) on boucle sur le ResultSet pour traiter les colonnes
en fonction du type de la colonne, on utilisera le getter qui correspond :
rs.getString(numColonne) ou rs.getString("nomColonne");
rs.getInt(...)
rs.getDouble(...)
rs.getDate(...)
etc...
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
En supposant que tu arrive deja a remplir ton resultset. il faut que tu connaisse dans le meilleur des cas la nature de tes donnees.
si ton resultset n'est supposé renvoyer qu'un enregistrement tu peut faire:
si ton resultset renvoye plus d'un enregistrement tu peut faire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 //en supposant que tu as 2 colonnes, la 1ere en int et l'autre en string Resultset result; int colonne1; String colonne2; //du code notament celui qui rempli ton resultset if(result.first()!=null){ //on teste bien qu'il y est un resultat dans le resultset //(on se place aussi sur le premier enregistrement) colonne1=result.getInt(1); colonne2=result.getString(2); System.out.println("Colonne1= "+colonne1 +"et Colonne2= "+colonne2); }
Si tu connais pas le type de tes donnees... tu peut faire un result.getObject(colonne);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 ResultSet result; int colonne1; String colonne2; //code.... if(result.first()!=null){ do{ colonne1=result.getInt(1); colonne2=result.getString(2); System.out.println("Colonne1= "+colonne1 "et Colonne2= "+colonne2); }while(result.next()); }
Il y a biensur d'autre facon de faire et tout le code necessaire notament les bloc try catch sont manquant.
je t'invite à aller voir dans la javadoc pour l'utilisation du resultset:
javadoc sur le site de sun
La javaDoc est mon amie, elle est la tienne aussi!
Voici mon problème
Les informations ne s'affichent pas dans le formulaire
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 public static void main(String[] args) { // TODO Auto-generated method stub Employe liste=new Employe(); } public Employe(){ try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String URL = "jdbc:odbc:gestion"; Connection con = DriverManager.getConnection(URL); Statement statement=con.createStatement(); String query="SELECT*FROM Employe"; ResultSet resultset=statement.executeQuery(query); int i=0; while(resultset.next()){ String id=resultset.getString(1); text1.setText(id); String id1=resultset.getString(2); text2.setText(id1); String id2=resultset.getString(3); text2.setText(id2); i=i+1; }System.out.println("Vous avez " + i + " Enregistrement"); con.close(); } catch(ClassNotFoundException e){ System.err.println("Erreur" +e); }catch(SQLException sqle){ System.err.println("erreur" +sqle); }
Bonjour,
Bon il est clair qu'il n'y a pas d'erreur mais vous veuillez vérifier que le resultset retourne au moins une ligne comme t'a expliqué Torg666 sinon vous veuillez vérifier la classe ou tu gère vos JTextField (La classe ou tu définit ton Frame)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager