IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

JTable et les données de sql server


Sujet :

Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Points : 42
    Points
    42
    Par défaut JTable et les données de sql server
    salem
    j'ai un grand probleme et je ne sais pas comment faire aidez moi SVP
    bon j'ai une BDD sous sql server et je dois récupérer les données d'une requete sql dans une interface graphique java ,pour la connexion c'est bon elle marche trés bien et je peux afficher les données dans le console maintenant je dois les représenter dans un JTable mais j'ai pas bien compris comments faire
    voici le code de la fenetre qui contien le JTable:


    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    public class jtable_cout extends JFrame {
     
    	//connexion
    	Connection con=null;
    	Calendar cal=Calendar.getInstance();
    	int i,j;String Stack[];
    	private JButton bouton_c_m;
    	private JTable jTable1;
     
      public jtable_cout() throws ClassNotFoundException{super();
     
        build();
     
    	  }
     
      private void build() throws ClassNotFoundException{
    		setTitle("A"); //On donne un titre à l'application
    		setSize(850,600); //On donne une taille à notre fenêtre
    		setResizable(true); //On interdit la redimensionnement de la fenêtre
     
    		setDefaultCloseOperation(EXIT_ON_CLOSE); //On dit à l'application de se fermer lors du clic sur la croix
     
    		setContentPane(buildContentPane());
     
    		getContentPane().setBackground(Color.white);
     
    		}
     
      private JPanel buildContentPane() throws ClassNotFoundException{
    	  JPanel panel=new JPanel();
     
     
    	//jtable
     
          // DefaultTableModel model = new DefaultTableModel();
            MonModele mm = new MonModele(MonModele.donnees,MonModele.colName);
           jTable1 = new JTable(mm);  
     
    	jTable1.setPreferredSize(new Dimension(900,300));
     
    	JScrollPane panel1 = new JScrollPane(jTable1);		
     
     
    		panel.add(jTable1);
     
    	   panel.add(panel1);
     
      return panel;}
     
     
     public static void main(String arg[]) throws ClassNotFoundException   
    	 {jtable_cout fenetre=new jtable_cout();
     
    	 fenetre.setVisible(true);//On la rend visible
     
    	}
    }
    et maintenant le code du modele et je pense que ici j'ai fais n'import quoi!!!!!!!




    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    public class MonModele extends AbstractTableModel {
     
    	public JTable  jTable1 ;
    	Connection con=null;
    	Calendar cal=Calendar.getInstance();
    	int i=-1,j,a=6,b=10;
       static Object donnees[][];
     
        static String titres[]={"numero de voiture", "désignation d'opération","date d'entrée","date de sortie","cout_maintenance","retard_maintenance"};
     
       public MonModele(Object donnees[][], String titres[]) {
     
          this.donnees = donnees;
     
          this.titres = titres;
     
       }
     
     
     
        public Object getValueAt(int parm1, int parm2) {
     
    	 //connexion
    	   try { 
    		    //1er:appel driver
    			 try {
    				Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    			} catch (ClassNotFoundException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			}//charger le pilote
     
     
    		   //2eme:connexion
    		      con = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;"+"DatabaseName=datawarehouse_nadia;user=sa");
     
    		  //requet
    		     Statement instruction = con.createStatement();
    		     ResultSet resultat = instruction.executeQuery("execute maintenance_voiture");	  
    		  //traitement de résultat
    		     ResultSetMetaData rsmd = resultat.getMetaData();
    		     colCount = rsmd.getColumnCount();
    		     parm1=colCount;
    		     resultat.last();
    		     rowCount = resultat.getRow();
    		     parm2=rowCount;
    		     resultat.beforeFirst();
     
    		   }
     
    		while (resultat.next()) {i=i+1;
    			cal.setTime(resultat.getDate("date_sortie"));
    		                          if(cal.get(Calendar.YEAR)==1988)
    								  {	
    								  if (cal.get(Calendar.MONTH)+1==3) 	            
    								  { System.out.println("ok");
    								  if(resultat.getString("numero_voiture")==null){donnees[i][0]="non spécifier";}
    								  else{donnees[i][0]=resultat.getString("numero_voiture");}            
     
    								  if(resultat.getString("désignation_opération")==null){donnees[i][1]="non spécifier";}
    								  else{donnees[i][1]=resultat.getString("designation_opération");}            
     
    								  if(resultat.getString("date_entrée")==null){donnees[i][2]="non spécifier";}
    								  else{donnees[i][2]=resultat.getString("date_entrée");}            
     
    								  if(resultat.getString("date_sortie")==null){donnees[i][3]="non spécifier";}
    								  else{donnees[i][3]=resultat.getString("date_sortie");}
     
    								  if(resultat.getString("cout_maintenance")==null){donnees[i][4]="non calculer";}
    								  else{donnees[i][4]=resultat.getString("cout_maintenance");}
     
    								  if(resultat.getString("retard_maintenance")==null){donnees[i][5]="pas de retard";}
    								  else{donnees[i][5]=resultat.getString("retard_maintenance");}
     
    									  System.out.println(donnees[1][1]);	
     
    								  }
    								  }
     
    		                                      }
    		//dernier etape:fermeture
    			   con.close();
    		} catch(SQLException ex){
    		            JOptionPane.showMessageDialog(null, "Ca marche pas");
    		            ex.printStackTrace();
    		                        }					  
     
     
     
     
     
    //fin connexion	    
     
     
    			return donnees[parm1][parm2];
     
       }
     
        public int getColumnCount() {
     
            return colCount;
     
        }
     
     public int getRowCount() {
     
           //return donnees.length;
    	   return  rowCount;
     
       }
     
     
     
       public String getColumnName(int col){
     
         return titres[col];
     
       }}



    au début il m'a donné des exceptions c'été pour la valeur null c'est pour ca j'ai testé les valeurs mais maintenant il ne me rien ni données ni exceptions

    merci bien de m'aider
    salem
    Nadia.

  2. #2
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340
    Par défaut
    Salut,

    Ce qui ne va pas c'est que tu as tout fusionné dans ta classe MonModele alors qu'elle ne doit s'occupper que des informations contenu dans donnees. Il ne doit pas y avoir d'objet JTable dedans. Plus grave, ce n'est pas ici que tu t'occupe des info de ta BDD.

    Le principe est d'avoir une classe JTable qui s'occupe de l'affichage de ton modèle. Une classe modele qui s'occupe de stocker tes info dans un tableau, et une troisième classe qui s'occupe de chercher les infos de la BDD et de les donner au model. Ensuite tu n'a plus qu'a donner le model à la JTable (méthode setModel je crois) pour que cette dernière puisse afficher ces infos.

    Le model devrait plutôt ressembler à ça (je le fait de mémoire) :
    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
    public class MonModele extends AbstractTableModel {
     
       private Object donnees[][];
        private String titres[];
     
       public MonModele(Object donnees[][], String titres[]) {
          this.donnees = donnees;
          this.titres = titres;
       }
     
        public Object getValueAt(int parm1, int parm2) {
     	return donnees[parm1][parm2];
        }
     
        public int getColumnCount() {
              return titres.length;
         }
     
      public int getRowCount() {
            return donnees.length;
       }
     
       public String getColumnName(int col){
         return titres[col];
       }
    }

  3. #3
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Points : 42
    Points
    42
    Par défaut merci
    salem
    merci bien visiwi pour votre aide
    mais maintenant pour la classe qui va chercher l'info dans la BDD ou je doit récupérer ces données ?? j'ai essayé une fois dans un tableau mais j'ai pas pu l'ajouter dans la matrice "donnees" du modele!!!!!!
    merci bien de me dir SVP
    salem

  4. #4
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340
    Par défaut
    Et bien tu utilise jdbc pour te connecter à ta base puis tu récupère tes info de ta base via une requête sql.
    Tu créé un tabeau à 2 dimension dont la première dim est équivalente au nombres d'enregistrement retournés, et la seconde au nombre de champ que tu as. Puis pour chaque enregistrement tu alimente ce tableau avec les bons indices (1ère et seconde dimensions). La première dim correspond à chaque enregistrement et la seconde à chaque champs pour un enregistrement.
    Ensuite tu créé ton objet MonModele en passant ce tableau au constructeur (avec le titres des colonnes).
    Puis tu ajoute le model à la JTable avec setModel (je crois, c'est à vérifier).
    Puis tu n'as plus qu'à afficher cette JTable dans un JScrollPane lui même afficher dans une fenêtre.

  5. #5
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Points : 42
    Points
    42
    Par défaut
    salem
    ok donc voici ce que j'ai fait maintenant
    1et classe pour mon jtable:

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    public class jtable_cout extends JFrame {
     
    	//connexion
    	Connection con=null;
    	Calendar cal=Calendar.getInstance();
    	int i,j;
    	private JTable jTable1;
    	private String[] coln={ "numero de voiture", "désignation d'opération","date d'entrée","date de sortie","cout_maintenance","retard_maintenance"};
     
     
      public jtable_cout() throws ClassNotFoundException{super();
     
        build();
     
    	  }
     
      private void build() throws ClassNotFoundException{
    		setTitle("Atelier Maintenance Férroviaire"); //On donne un titre à l'application
    		setSize(850,600); //On donne une taille à notre fenêtre
    		setResizable(true); //On interdit la redimensionnement de la fenêtre
     
    		setDefaultCloseOperation(EXIT_ON_CLOSE); //On dit à l'application de se fermer lors du clic sur la croix
     
    		setContentPane(buildContentPane());
     
    		getContentPane().setBackground(Color.white);
     
    		}
     
      private JPanel buildContentPane() throws ClassNotFoundException{
    	  JPanel panel=new JPanel();
     
     
    	//jtable
            conx c=new conx();
     
            MonModele mm = new MonModele(c.data,coln);
           jTable1 = new JTable();  
           jTable1.setModel(mm); 
    	jTable1.setPreferredSize(new Dimension(900,300));
     
    	JScrollPane panel1 = new JScrollPane(jTable1);		
     
     
    		panel.add(jTable1);
     
    	   panel.add(panel1);
     
      return panel;}
     
     
     public static void main(String arg[]) throws ClassNotFoundException   
    	 {jtable_cout fenetre=new jtable_cout();
     
    	 fenetre.setVisible(true);//On la rend visible
     
    	}
    }

    et 2eme classe pour le modele:

    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
    public class MonModele extends AbstractTableModel {
     
    	    static Object donnees[][];
    	    static String titres[];
     
    	   public MonModele(Object donnees[][], String titres[]) {
    	      this.donnees = donnees;
    	      this.titres = titres;
    	   }
     
    	    public Object getValueAt(int parm1, int parm2) {
    	 	return donnees;
    	    }
     
    	    public int getColumnCount() {
    	          return titres.length;
    	     }
     
    	  public int getRowCount() {
    	        return donnees.length;
    	   }
     
    	   public String getColumnName(int col){
    	     return titres[col];
    	   }
    	}
    et 3eme classe de connexion et récupération données:

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    class conx
    	{	static Object data[][]=null ;	
    	public static void main(String arg[])throws Exception
    	{ int i=-1;
    	Connection con=null;
    	Calendar cal=Calendar.getInstance();
    	try { 
    	    //1er:appel driver
    		 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//charger le pilote
    	       JOptionPane.showMessageDialog(null,"Premiere etape ça marche");
     
     
    	   //2eme:connexion
    	      con = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;"+"DatabaseName=datawarehouse_nadia;user=sa");
    	      JOptionPane.showMessageDialog(null, "Connection OK");
     
    	l
    	     Statement instruction = con.createStatement();
    	     ResultSet resultat = instruction.executeQuery("execute maintenance_voiture");	  
    	  //traitement de résultat
    data=new String [1000][6];
     
    while (resultat.next()) {  
    cal.setTime(resultat.getDate("date_sortie"));
    if(cal.get(Calendar.YEAR)==1988)
    {	
    if (cal.get(Calendar.MONTH)+1==4) 
    {i=i+1;
     
    	if(resultat.getString("numero_voiture")==null){data[i][0]="non spécifier";}
    else{data[i][0]=resultat.getString("numero_voiture");}            
     
    if(resultat.getString("designation_opération")==null){data[i][1]="non spécifier";}
    else{data[i][1]=resultat.getString("designation_opération");}            
     
    if(resultat.getString("date_entrée")==null){data[i][2]="non spécifier";}
    else{data[i][2]=resultat.getString("date_entrée");}            
     
    if(resultat.getString("date_sortie")==null){data[i][3]="non spécifier";}
    else{data[i][3]=resultat.getString("date_sortie");}
     
    if(resultat.getString("cout_maintenance")==null){data[i][4]="non calculer";}
    else{data[i][4]=resultat.getString("cout_maintenance");}
     
    if(resultat.getString("retard_maintenance")==null){data[i][5]="pas de retard";}
    else{data[i][5]=resultat.getString("retard_maintenance");}
     
    }}//les 2 if
     
    }
     
           //dernier etape:fermeture
                con.close();
    	}catch(SQLException ex){
            JOptionPane.showMessageDialog(null, "Ca marche pas");
            ex.printStackTrace();
                                  }//catch
     
    }//main
    }//class
    et tj il ne m'affiche pas les données il m'affiche seulement un un tableau vide!!!!
    aidez moi SVP
    merci bien
    salem

  6. #6
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340
    Par défaut
    Plusieurs petite chose en passant, qui peuvent paraitre être des détails mais qui en fait aide à organiser son code et donc aussi sa pensée.
    - Les classes commencent par une majuscule, sans caractère spéciaux tel underscore.
    - Met la visibilité la plus réduite possible pour les attributs et méthodes (au lieu de int i, j; met private int i, j
    - les attributs donnees et titre dans le modele ne devrait pas être static

    Sinon :
    - dans buildContentPane(), tu n'a pas besoin de faire :
    puisque tu ajoute la JTable dans le JScrollPane et que plus loin tu ajoute le scroll au panel

    Ton problème vient du fait qu'en fait tu ne construit pas le modele puisque tu l'a mis en un main qui n'est jamais appelé puisque tu lance ton appli par ta classe jtable_cout.
    J'ai juste modifié cela en créant une méthode static retournant le tableau. Et modifié l'appel à c.data dans buildContentPane().
    Cela devrait fonctionner.
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    import java.awt.Color;
    import java.awt.Dimension;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
     
    @SuppressWarnings("serial")
    public class MaFenetre extends JFrame {
     
    	// connexion
    	private JTable jTable1;
    	private String[] coln = { "numero de voiture", "désignation d'opération",
    			"date d'entrée", "date de sortie", "cout_maintenance",
    			"retard_maintenance" };
     
    	public MaFenetre() throws ClassNotFoundException {
    		super();
    		build();
    	}
     
    	private void build() throws ClassNotFoundException {
    		setTitle("Atelier Maintenance Férroviaire"); // On donne un titre à
    													// l'application
    		setSize(850, 600); // On donne une taille à notre fenêtre
    		setResizable(true); // On interdit la redimensionnement de la fenêtre
    		setDefaultCloseOperation(EXIT_ON_CLOSE); // On dit à l'application de se
    													// fermer lors du clic sur
    													// la croix
    		setContentPane(buildContentPane());
    		getContentPane().setBackground(Color.white);
    	}
     
    	private JPanel buildContentPane() throws ClassNotFoundException {
    		JPanel panel = new JPanel();
    		// jtable
    		jTable1 = new JTable();
    		try {
    			Object[][] data = ContructionDuModele.bluidData();
    			MonModele model = new MonModele(data, coln);
    			jTable1.setModel(model);
    		} catch (Exception e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		jTable1.setPreferredSize(new Dimension(900, 300));
    		JScrollPane panel1 = new JScrollPane(jTable1);
    		// panel.add(jTable1);
    		panel.add(panel1);
    		return panel;
    	}
     
    	public static void main(String arg[]) throws ClassNotFoundException {
    		MaFenetre fenetre = new MaFenetre();
    		fenetre.setVisible(true);// On la rend visible
    	}
     
    }
    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
    import javax.swing.table.AbstractTableModel;
     
    @SuppressWarnings("serial")
    public class MonModele extends AbstractTableModel {
     
    	private Object donnees[][];
    	private String titres[];
     
    	public MonModele(Object donnees[][], String titres[]) {
    		this.donnees = donnees;
    		this.titres = titres;
    	}
     
    	public Object getValueAt(int parm1, int parm2) {
    		return donnees;
    	}
     
    	public int getColumnCount() {
    		return titres.length;
    	}
     
    	public int getRowCount() {
    		return donnees.length;
    	}
     
    	public String getColumnName(int col) {
    		return titres[col];
    	}
     
    }
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.Calendar;
    import javax.swing.JOptionPane;
     
    public class ContructionDuModele {
     
    	public static Object[][] bluidData() throws Exception {
    		Object data[][] = null;
    		int i = -1;
    		Connection con = null;
    		Calendar cal = Calendar.getInstance();
    		try {
    			// 1er:appel driver
    			Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");// charger
    																			// le
    																			// pilote
    			JOptionPane.showMessageDialog(null, "Premiere etape ça marche");
    			// 2eme:connexion
    			con = DriverManager
    					.getConnection("jdbc:microsoft:sqlserver://localhost:1433;"
    							+ "DatabaseName=datawarehouse_nadia;user=sa");
    			JOptionPane.showMessageDialog(null, "Connection OK");
    			Statement instruction = con.createStatement();
    			ResultSet resultat = instruction
    					.executeQuery("execute maintenance_voiture");
    			// traitement de résultat
    			data = new String[1000][6];
    			while (resultat.next()) {
    				cal.setTime(resultat.getDate("date_sortie"));
    				if (cal.get(Calendar.YEAR) == 1988) {
    					if (cal.get(Calendar.MONTH) + 1 == 4) {
    						i = i + 1;
    						if (resultat.getString("numero_voiture") == null) {
    							data[i][0] = "non spécifier";
    						} else {
    							data[i][0] = resultat.getString("numero_voiture");
    						}
     
    						if (resultat.getString("designation_opération") == null) {
    							data[i][1] = "non spécifier";
    						} else {
    							data[i][1] = resultat
    									.getString("designation_opération");
    						}
     
    						if (resultat.getString("date_entrée") == null) {
    							data[i][2] = "non spécifier";
    						} else {
    							data[i][2] = resultat.getString("date_entrée");
    						}
     
    						if (resultat.getString("date_sortie") == null) {
    							data[i][3] = "non spécifier";
    						} else {
    							data[i][3] = resultat.getString("date_sortie");
    						}
     
    						if (resultat.getString("cout_maintenance") == null) {
    							data[i][4] = "non calculer";
    						} else {
    							data[i][4] = resultat.getString("cout_maintenance");
    						}
     
    						if (resultat.getString("retard_maintenance") == null) {
    							data[i][5] = "pas de retard";
    						} else {
    							data[i][5] = resultat
    									.getString("retard_maintenance");
    						}
    					}
    				}// les 2 if
    			}
    			// dernier etape:fermeture
    			con.close();
    		} catch (SQLException ex) {
    			JOptionPane.showMessageDialog(null, "Ca marche pas");
    			ex.printStackTrace();
    		}// catch
    		return data;
    	}
     
    }// class

  7. #7
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Points : 42
    Points
    42
    Par défaut Merci beaucoup
    salem
    je vous remerci infiniment visiwi pour votre aide
    ca marche maintenant,moi j'ai pensé que lorsque on crée un objet d'une classe il va s'executer c'est pour ca j'ai fait tous dans main puis j'ai crée un objet !!!!!!!
    seulement il y une petite erreur dans le code du MonModele il faut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    public Object getValueAt(int parm1, int parm2) {
    		return donnees [parm1][parm2];
    et voila merci bien
    salem

  8. #8
    Membre expérimenté
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 050
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 050
    Points : 1 340
    Points
    1 340
    Par défaut
    De rien
    Ravi d'avoir pu t'aider,
    Bon Java
    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/12/2006, 17h12
  2. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  3. Récupérer les données Insert - SQL Server 2000
    Par jfc dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/04/2006, 07h47
  4. Une ch'tite bizarrerie dans les Updates de SQL Server
    Par Wakko2k dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 08/04/2004, 14h14
  5. Convertir un type de donnée sous SQL Server
    Par Fleep dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 19/08/2003, 15h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo