# ResultSet to String[]



## Fireball (15. Okt 2009)

Hallo Zusammen,

ich hab ein kleines Problem.

Nach dem lesen einer Datenbank, erhalte ich ein ResultSet. Die DB sieht so aus:

SpaltenName     Wert
---------------------
Name               true
Vorname           false
Alter                true

Der Select sieht so aus:


```
ResultSet rs = stmt.executeQuery("SELECT SpaltenName FROM Spalten WHERE Wert = true");
```

Wenn ich mir das ganze jetzt ausgeben lassen erhalten ich einen String mit beiden Werten.


```
while ( rs.next() ) 
	      System.out.println( rs.getString(1));
```

Also "NameAlter". 

Wie bekomme ich jetzt diese Ausgabe am besten in ein String-Array??
Also an der Positon 0 sollte dann Name stehen und an 1 Alter.

Der Hintergrund ist der, das nur bestimmte Spalten in einer Tabelle angezeigt werden sollen, also nur die die auf True in der DB gesetzt sind. Nach der Ermittlung der Spaltennamen, will ich das Array einmal an das TableModel übergeben und dann noch einer 2ten Funktion die wieder ein Select auf eine anderer DB macht und dort eben nur die Wert für die bestimmten Spalten ausliest. Diese sollen dann wieder ans TableModel gehen.


----------



## SlaterB (15. Okt 2009)

for i {
array i = rs.getString i
}


----------



## Fireball (15. Okt 2009)

Hatte selber einen Denkfehler. Hab es jetzt so gelöst.


```
ArrayList<String> str = new ArrayList<String>();
			
	  while ( rs.next() ) 
		str.add(rs.getString(1));
			
	 Object[] spalten = str.toArray();
```


----------



## Gast2 (15. Okt 2009)

Fireball hat gesagt.:


> ```
> ArrayList<String> str = new ArrayList<String>();
> ```



Ist nicht gut besser ist,



```
List<String> str = new ArrayList<String>();
```

Und warum konvertierst du es in ein Object[] um?


----------

