Dynamisches resultSet

anjepieft

Mitglied
Hallo zusammen,
ich habe ein Problem mit einem resultSet. Mein resultSet hat, Aufgrund unterschiedlicher Tabellen die abgefragt werden können, eine unterschiedliche Anzahl an Spalten. Das Problem ist das ich bei der Ausgabe der Daten dann nicht über resultSet.getString(1) usw. die Ausgaben machen kann. Ich möchte das diese Ausgabe anhand der vorhandenen Spalten gemacht wird. Könnte mir einer sagen wie ich prüfe ob überhaupt ein nächster String in der Zeile vorhanden ist?

Bisher hab ich es so aber das klappt ja so nicht:
Code:
resultSet = statement.executeQuery(select);
            while(resultSet.next()) {
            	i = 1;
            	while(resultSet.getString(i) != null)
            	{
            		System.out.print(resultSet.getString(i)+"\t");
            		i++;
            	}
            	System.out.print("\n");
            }

Vielen Dank schonmal für eure Hilfe!
 
Hallo,

eventuell ist ResultSetMetaData genau das was du suchst:

Java:
			while (resultSet.next()) {
				ResultSetMetaData metaData = resultSet.getMetaData();
				int columnCount = metaData.getColumnCount();
				for (int i = 0; i < columnCount; i++) {
					String columnLabel = metaData.getColumnLabel(i);
					System.out.println(resultSet.getString(i));
					System.out.println(resultSet.getString(columnLabel));
				}
			}
 
Hi,
hab ich getestet aber ich bekomme folgende Fehlermeldung: ResultSetMetaData metaData = resultSet.getMetaData();
int columnCount = metaData.getColumnCount();
 
Zurück