# Daten aus MySQL-Datenbankl in Tabellen-GUI ausgeben.



## hamburger_1983 (7. Sep 2007)

Hallo.

folgendes Problem.

Ich habe eine MySQL-Datenbank und will bei einer Abfrage die entsprechenden Daten in einer Tabelle in einer GUI ausgeben lassen. Nur irgendwie hackt die Sache noch.


```
package de.bws.fabian.data;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Driver;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.*;
import javax.swing.*;

public class MyFrame extends JFrame
{
	    private JPanel panelList;
	    private JTable tabelle;
	    private static Object[] dataTemp;

        public static void dbout(Statement stmt) throws ClassNotFoundException, SQLException {
        	try
        	{
        		//Treiber laden
        		Class.forName("com.mysql.jdbc.Driver");

        		//Connection herstellen
        	    String dbHost = "jdbc:mysql://192.168.0.51/fabian_autopark";
        	    String dbUser = "root";
        	    String dbPass = "";

        	    Connection conn = DriverManager.getConnection(dbHost, dbUser, dbPass);
		        	    
        	    //Statement erzeugen
        	    stmt = conn.createStatement();
        	    dbout(stmt);}
          	finally {
          	}
        	
           	String abfrage ="SELECT * FROM kunde";
           	ResultSet result = stmt.executeQuery(abfrage);
         	System.out.println("Abfrage: " + abfrage);

           	while (result.next())
           	{
           		Long id = result.getLong("ID");
           		String vorname = result.getString("vorname");
           		String nachname = result.getString("nachname");
           		String strasse = result.getString("strasse");
           		String hausnummer = result.getString("hausnummer");
           		int plz = result.getInt("plz");
           		String ort = result.getString("ort");
           		String land = result.getString("land");
           		String telefon = result.getString("telefon");

           	Object[] zeilen = {" "};
           	Object[] tableIndex = {id, vorname, nachname, strasse, hausnummer, plz, ort, land, telefon};
           	Object[] temp = zeilen;
           	Object[] dataTemp = {tableIndex,temp};
           	      		
//           	Object[] tableIndex = {id, vorname, nachname, strasse, hausnummer, plz, ort, land, telefon};
//       		Object[] zeilen = {};
//        	//Object[] zeilen = {id, vorname, nachname, strasse, hausnummer, plz, ort, land, telefon};
//        	Object[][] dataTemp = {{tableIndex},{zeilen}};
//        	zeilen = {};
           	}
	            	
           	//Connection schliessen
           	result.close();
           	return;
          }
      

	       
	  public MyFrame()
      {
              super("Juchu - Ich habe ein Fenster");
              setSize(300,500);
              setLocation(300,300);
              setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              getContentPane().setLayout(new BorderLayout(5,5));
              
              //Tabelle erzeugen
              Object[] daten = dataTemp;
              //Object[][] daten = {
              //	  {"1", "Rosa-Mercedes", "Zehk-Lasse", "Benzweg", "307", "54785", "Stuttgart", "Deutschland", null},
              //};
              String[] spaltenNamen = {"ID", "Vorname", "Nachname", "Straße", "Hausnummer", "PLZ", "Ort", "Land", "Telefon"};
              tabelle = new JTable(daten, spaltenNamen);
              tabelle.setPreferredScrollableViewportSize(new Dimension(400, 60));


              //Panels erzeugen
              panelList = new JPanel(new GridLayout(1,1));

              //auf Panel Liste packen
              add(tabelle, BorderLayout.CENTER);
              add(tabelle.getTableHeader(), BorderLayout.NORTH);

              pack();
              setVisible(true);
      }
	  
      public static void main(String[] args)
      {
	  MyFrame g = new MyFrame();
      }
```

Danke schonmal


----------



## The_S (7. Sep 2007)

Drück dich bitte deutlicher aus:

Was geht nicht?
Was erwartest du zu bekommen?
Wo ist die Stelle, die Probleme macht?
Gibt es eine Exception?
...?


----------



## FenchelT (7. Sep 2007)

hamburger_1983 hat gesagt.:
			
		

> Hallo.
> 
> folgendes Problem.
> 
> Ich habe eine MySQL-Datenbank und will bei einer Abfrage die entsprechenden Daten in einer Tabelle in einer GUI ausgeben lassen. Nur irgendwie hackt die Sache noch.





```
SELECT info
FROM glaskugel
WHERE failuremsg = 'Es hackt irgendwo'

0-rows returned
```


----------



## tuxedo (7. Sep 2007)

Kann es sein dass du dein "dbout" nirgendwo ausserhalb "dbout" aufrufst? Ergo wird dein dataTemp auch nicht gefüllt?



> ```
> SELECT info
> FROM glaskugel
> WHERE failuremsg = 'Es hackt irgendwo'
> ...



--> LOL

Eine Beschreibung deines Problems wäre nicht schlecht, dann wüsste man schon wo man suchen soll, und sucht nicht erst das Problem bevor man die Lösung sucht.

- Alex


----------

