# MySQL Abfrage in showInputDialog laden



## satinez (22. Feb 2010)

ciao!

Ich bin neu hier in diesem Forum und habe beschlossen mich näher mit JAVA zu befassen. 
Es ist für mich etwas neues. Interessant auf jedenfall.

Hier meine Frage problemchen oder wie man das sehen will 

Ich arbeite an einem Projekt. Es geht darum dass ich ein Benutzer aus der MySQL Datenbank lösche.

Verbindung zur Datenbank besteht, Benutzer erstellen funktioniert auch sehr gut.

Ich möchte gerne aus der MySQL-Datenbank die User in ein showInputDialog anzeigen lassen, und bei klick auf OK, soll eine Bestätigungsfrage erscheinen und zu guter letzt soll der ausgewählte User von der DB gelöscht werden.








Wie gehe ich am besten vor?

Muss ich die Datenbankabfrage in ein Array speichern, damit JAVA damit umgehen kann?


lg satinez


----------



## Atze (22. Feb 2010)

nein, eine liste (resultset) bekommst du automatisch nach deiner (erfolgreichen) abfrage zurück. würde mir hierzu mal die jdbc schnittstelle ansehen.


----------



## satinez (22. Feb 2010)

Danke, okey das ResultSet, hab verstanden. 

Doch wie bekomme ich die Daten in den showInputDialog ?


```
Object[] userInDatabase = {"ham", "spam", "yam"};
        	String s = (String)JOptionPane.showInputDialog(
        	                    null,
        	                    "Bitte Benutzer auswahlen:\n"
        	                    + "\n",
        	                    "Customized Dialog",
        	                    JOptionPane.PLAIN_MESSAGE,
        	                    
        	                    null, userInDatabase,
        	                    "ham");
```


Muss ich die Daten aus dem ResultSet in das possibilties Array setzen?
Oder kann ich dem showInputDialog als letzten Parameter das ResultSet übergeben, wie kann ich denn das machen, dass er alle in den Dialog einfügt, und nicht nur einen? hmmm..

lg satinez


----------



## Atze (22. Feb 2010)

dann musst du dir wohl vorher eine eigene geeignete strukur erzeugen, bspw eine combobox, und diese anzeigen, falls du einen daraus wählen willst. wenn es nur eine bestätigung ist (alle oder keinen) reichts ja, wenn du dir aus dem resultset die namen zusammenstöpselst und als string anzeigst.


----------



## satinez (22. Feb 2010)

Hmm ich dachte dieses showInputDialog ist eine Art Combobox.
Ich versuchsmal 

Wo mach ich den Fehler?

Er zeigt mir nur eine Ausgabe an..



```
while( rs.next() )
{ 
	System.out.println(rs.getString("author"));
	
	JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JComboBox jComboBox1 = new JComboBox();
    jComboBox1.addItem(rs.getString("author"));
    Object cmboitem = jComboBox1.getSelectedItem();
    System.out.println(cmboitem);

    frame.add(jComboBox1);

    frame.setSize(300, 200);
    frame.setVisible(true);
	
	
}
```

In der Konsole zeigt er alle an, aber in der ComboBox nicht.


----------



## Atze (22. Feb 2010)

es ist immer die letzte ausgabe, richtig? 

du erzeugst ja auch für jede ausgabe nen neuen dialog. außerdem bekommst du in nem showinputdialog ja nichts von dem selektierten user mit. du musst dir wohl nen eigenen dialog schreiben, in welchem du EINE combobox anzeigst, die ALLE einträge enthält.


```
JComboBox jComboBox1 = new JComboBox();
while(rs.next()){
     jComboBox1.addItem(rs.getString("author"));
}
```


----------



## satinez (22. Feb 2010)

Danke funzt 1A 

Weiter gehts mit Fenster fokusieren und Action auf ein JComboBox element.


----------

