Comment afficher les resultat d'une requete sql dans une textarea [Résolu]

Messages postés
3
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
23 mars 2008
- - Dernière réponse : cs_Chatbour
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
- 23 mars 2008 à 16:43
salut  a tous
je voudrai savoir Comment afficher les resultat d'une requete sql dans une textarea
j'ai essayé beacoups de code mais ca marche pas
on faisant System.out.Println les resultat s'affiche mais sur la console et pas dans le textarea.
voici le code que j'ai ecrit:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;

class Liste_patient extends Frame

{
   
   
    JTextArea ta;
   
    public Liste_patient()
        {
   
    ta=new JTextArea(40,40);
   
    JPanel p=new JPanel();
   
    p.add(ta);
    add(p,"Center");
    setVisible(true);
    setTitle("Listes des Patient");
    pack();
    addWindowListener(new WindowAdapter()
         {public void windowClosing(WindowEvent ev)
         {
             dispose();}
         }
         );
   
    }
   
     
       
    public void connection(){
    String requete="SELECT * FROM patient";
    try{
   
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection con = DriverManager.getConnection("jdbc:odbc:source1");
    Statement stmt = con.createStatement();
    ResultSet rs = stmt.executeQuery(requete);
   String a2="";
   String a3="";
   String a4="";
   String a5="";
   String a6="";
   String a7="";
   String a8="";
   int a1=0;
   while(rs.next())
   {
        a1=rs.getInt("num");
        a2=rs.getString("nom");
        a3=rs.getString("age");
        a4=rs.getString("adresse");
        a5=rs.getString("numtel");
        a6=rs.getString("remarque");
        a7=rs.getString("numordo");
        a8=rs.getString("ordo");
        System.out.println(a1+"\n "+a2+"\n "+a3+"\n "+a4+" \n"+a5+" \n"+a6+" \n"+a7+" \n"+a8+"\n");
        ta.setText(Integer.toString(a1)+"|");
        ta.setText(a2);
        ta.setText(a3);
        ta.setText(a4);
        ta.setText(a5);
        ta.setText(a6);
        ta.setText(a7);
        ta.setText(a8);
        }
  
  
  stmt.close();
  con.close();
  }
   
   catch(Exception exc){
 }
 

    }
}
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
15
3
Merci
Salut,

j'ai pas essayé ton code mais le fait de faire ta.setText à chaque fois remplace l'ancien contenu de ta.

tu peux par exemple faire :
ta.setText(ta.getText() + ai); //(i:=1..8)
ou utiliser un objet String où tu mets les ai puis tu fais:
ta.setText(ta.getText() + objString);

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 120 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Chatbour
Messages postés
3
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
23 mars 2008
1
1
Merci
enfin ca marche problemme resolu merci a tous
Commenter la réponse de lezoku
0
Merci
Bonjour lezoku

Apprends à lire la documentation Java!!!!!!!!!!! setText() sert à remplir toute la JTextArea. Donc à chaque fois, dans ton code, tu écrases ce que tu venais d'écrire juste avant. D'abord, fais ta.setText(""); pour vider l'air de texte juste avant la boucle while. Dans la boucle, utilise plutôt la méthode append() pour ajouter tes informations.
Va voir dans la documentation Java :
http://java.sun.com/javase/6/docs/api/

A l'avenir, donne toi au moins la peine de lire la documentation avant de poser une question ici s'il te plaît.

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java
Commenter la réponse de Utilisateur anonyme
Messages postés
3
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
23 mars 2008
1
0
Merci
j'ai essayé vos solutions mais le champ textarea est toujours vide
Commenter la réponse de lezoku
0
Merci
Chabour, ça ne sert à rien de répéter la même chose que moi en reformulant à peine! Faire ta.setText(ta.getText()+ai) revient à faire ta.append(ai) !

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java
Commenter la réponse de Utilisateur anonyme
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
15
0
Merci
j'ai pas reformulé ce que tu viens d'écrire car tout simplement, j'ai posté avant de lire ton message
Commenter la réponse de cs_Chatbour
Messages postés
764
Date d'inscription
jeudi 27 juillet 2006
Statut
Membre
Dernière intervention
6 septembre 2010
15
0
Merci
mais je dois dire que ta solution est bien meilleure puisque c'est l'utilisation d'une méthode prédéfinie et non pas un débrouillage comme j'ai fais..
Commenter la réponse de cs_Chatbour