Anzahl der Spalten eines ResultSets bestimmen

Status
Nicht offen für weitere Antworten.

WurstBrot

Neues Mitglied
Hallo,
ich bin noch relativ neu in der ganzen Materie und habe ein Problem.
Um mit einer DB auf einem MS SQL Server zu verbinden habe ich folgende Klasse:

Code:
public class DBConnector {
	
	public void processQuery(String query) {
		//Kreire Variable fuer ConnectionString
		String connectionUrl = "jdbc:sqlserver://localhost\\sqlexpress;" +
			"databaseName=spektrenalt;user=sa;password=root";
		
		//Deklaration JDBC Objekte
		Connection con = null;
		Statement stmt = null;
		ResultSet rs = null;
		try {
			//Verbindungsaufbau
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			con = DriverManager.getConnection(connectionUrl);
			
			//Erstelle und führe aus SQL Statement
			String SQL = query;
			stmt = con.createStatement();
			rs = stmt.executeQuery(SQL);
						
			//Iteriere durch ResultSet und stelle es dar
			while (rs.next()) {
				System.out.print(rs.getString(1));			
			}
		}
		
		//Fehlerbehandlung
		catch (Exception e) {
			e.printStackTrace();	
		}
		finally {
			if (rs != null) try { rs.close(); } catch (Exception e) {}
			if (stmt != null) try { stmt.close(); } catch (Exception e) {}
			if (con != null) try { con.close(); } catch (Exception e) {}
		}
	}

}
Ich gebe meien ResultSet mit rs.getString(1) aus.
Nun interessiert mich, ob es eine Möglichkeit gibt, den maximalen Spaltenindex des ResultSets zu ermitteln, um eventuell über eine for-Schleife eine Ausgabe zu generieren,für die der Übergabewert von getString() von 1 bis maxSpaltenIndex läuft.

Soweit erstmal vielen Dank
 

Rydl

Bekanntes Mitglied
also mir fällt grad kein beispiel ein, in dem man die spaltenanzahl eines resulsets nicht kennt, aber ich versteh was du meinst und ich glaub das geht nicht ;) du musst wohl oder übel deine spalten beim namen nennen, so viele werden es ja wohl nicht sein..
 

HoaX

Top Contributor
javadoc von ResultSet hat gesagt.:
The number, types and properties of a ResultSet object's columns are provided by the ResulSetMetaData object returned by the ResultSet.getMetaData method.
noch fragen, kienzle?
 

robertpic71

Bekanntes Mitglied
Ich kann sogar einen Beispielcode anbieten:

Code:
// Pseudo-SQL absetzen, Metadaten auslesen
ResultSet rs = stmt.executeQuery ("select * from " + dbFileName
                 + " where 'Y' = 'X'");

ResultSetMetaData meta   = rs.getMetaData();
anzFields = meta.getColumnCount();

// Tabellen für Metadaten + Daten anlegen
fieldName = new String[anzFields];
...

Meine Anwendung: Ein XML-Mapper der eine XML-Datei in die Datenbank schreibt/mappt. Dabei werden nur gleichnamige Felder (XML-Itemname = FeldName, XML-Knotenname = Datei) gemappt.

Diese Funktion hat jetzt schon einige EDIFACT-Mapping-Änderungen (Ausgabe XML-Datei) mitgemacht, ohne das ich das was nachbessern musste.

/Robert
 

ARadauer

Top Contributor
@Rydl: ein beispiel, ist zb wenn du auf eine fremde datenbank, bzw undokumentierte datenbank zugreiffen musst
 

WurstBrot

Neues Mitglied
Danke Leute.
Das war genau was ich suchte.
:applaus:
So, und wie setz ich jetzt den "Frage beantwortet Haken" :autsch:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C PostgreSQL Anzahl der Spalten ermitteln Datenbankprogrammierung 2
ruutaiokwu Duplikate auf bestimmte Anzahl begrenzen Datenbankprogrammierung 8
A Maximale Anzahl offener Cursor überschritten Datenbankprogrammierung 5
OnDemand SQL Query Anzahl der Werte Datenbankprogrammierung 8
Kandum MySQL Anzahl gefundener Datensätze bleibt gleich, auch wenn mehr existieren und ausgegeben werden Datenbankprogrammierung 3
S Anzahl Datensätze in db4o Datenbankprogrammierung 2
N Prepared Statement mit unbekannter Anzahl von Where-Clauses Datenbankprogrammierung 30
B Die Anzahl der Datensaetze einer Datenbank anzeigen Datenbankprogrammierung 2
Guybrush Threepwood H2: Anzahl an Usern begrenzen Datenbankprogrammierung 2
I MySQL - Anzahl Tabellen heraus finden Datenbankprogrammierung 6
A Maximale Anzahl offener Cursor überschritten Datenbankprogrammierung 4
I Anzahl unterschiedlicher Datensätze ausgeben Datenbankprogrammierung 2
D Anzahl der Elemente im ResultSet ermitteln Datenbankprogrammierung 8
J Maximale Anzahl von char in SQL Datenbankprogrammierung 11
E Maximale Anzahl offener Cursor Datenbankprogrammierung 9
A Maximale Anzahl offener Cursor erreicht Datenbankprogrammierung 3
Z Zeilen-Anzahl abfragen bei Datenbank Datenbankprogrammierung 4
G Anzahl der Datensaetze abfragen Datenbankprogrammierung 11
rambozola große anzahl an inserts bei oracle db unperformant Datenbankprogrammierung 15
S Anzahl geänderte Records Datenbankprogrammierung 2
V Anzahl der Datensätze abfragen Datenbankprogrammierung 9
B PreparedStatement - anzahl ParameterValues Datenbankprogrammierung 6
M Anzahl der Tabellen herausfinden Datenbankprogrammierung 6
M begrenzte anzahl von resultsets pro connection?? Datenbankprogrammierung 6
D Anzahl der zurückgelieferten Datensätze Datenbankprogrammierung 2
OnDemand Daten auf mehrere Tabellen aufteilen oder Spalten nutzen Datenbankprogrammierung 2
P Derby/JavaDB JPA Reihenfolge Spalten ändern Datenbankprogrammierung 6
E Wie kann man BLOB-Spalten in DB2 einfügen? Datenbankprogrammierung 9
E Kann man in DB2 Boolean Spalten erstellen? Datenbankprogrammierung 1
M JDBC Tabellen mit Boolean Spalten können nicht erstellt werden. DB Updaten - wie? Datenbankprogrammierung 6
D Aufteilung ähnlicher Spalten Datenbankprogrammierung 2
M DES und ASC auf verschiedene Spalten anwenden Datenbankprogrammierung 2
S MySQL Befüllen von mehreren Spalten Datenbankprogrammierung 1
I Was ist besser: Tabellen oder Spalten Datenbankprogrammierung 1
V Hibernate und optionale Spalten? Datenbankprogrammierung 2
turmaline [HQL] Dynamische Spalten erzeugen Datenbankprogrammierung 14
R MySQL Unbenutzte Tabellen/Spalten herausfinden Datenbankprogrammierung 7
O DefaultTableModel Spalten ausblenden Datenbankprogrammierung 3
T Spalten einer SQL-Anfrage vorhersagen Datenbankprogrammierung 6
N Zwei Spalten und Ihre Werte vergleichen Datenbankprogrammierung 3
H Group By mit mehreren Spalten Datenbankprogrammierung 2
multiholle SQL Querry über mehrere Spalten Datenbankprogrammierung 12
G Spalten definieren Datenbankprogrammierung 5
A MSSQL - Spalten mit der Option: NULL zulassen Datenbankprogrammierung 2
thE_29 ResultSet und doppelte Spalten Datenbankprogrammierung 4
H Individuelle Datenbankfelder/-spalten wie realisieren? Datenbankprogrammierung 3
Y Hibernate - Update bestimmter Spalten Datenbankprogrammierung 2
G Spalten Namen auslesen und Zeilen daten auslesen Datenbankprogrammierung 17
G maximale Länge von Spalten ermitteln Datenbankprogrammierung 3
M Maximum aus verschiedenen Spalten Datenbankprogrammierung 2
J Alle Spalten und Zeilen eines ResultSets ausgeben ? Datenbankprogrammierung 2
R getString() auf double-Spalten(DECIMAL) Nachkommastellen weg Datenbankprogrammierung 2
Robert Zenz Aufteilen von Up/Downvotes eines Benutzers in drei Gruppen. Datenbankprogrammierung 0
H Oracle Resize eines Images in Java und Rückgabe des Image als BLOB an die Oracle Datebank Datenbankprogrammierung 14
damike84 Hibernate: persistieren eines Graphen Datenbankprogrammierung 2
G Laufzeit eines Algorithmus mittels Big Theta bestimmen Datenbankprogrammierung 5
G ID zuweisung eines TerminKalenders (mehrere Kalender) Datenbankprogrammierung 8
D Hibernate: Zustand eines Objekts erkennen? Datenbankprogrammierung 0
S HSQLDB Verbieten eines update auf eine bestimmte reihe Datenbankprogrammierung 4
J Datenbankeintag eines Warenkorbes funktioniert nicht Datenbankprogrammierung 4
H MySQL Werte eines Datensatzes in einen anderen kopieren Datenbankprogrammierung 2
M [Hibernate]Abgleich eines lokalen Objekts mit dem Zustand aus der Datenbank. Datenbankprogrammierung 3
N Problem bei Erstellung eines Index Datenbankprogrammierung 12
G PostgreSQL Postgre: Passwort eines Benutzers ändern Datenbankprogrammierung 3
D Anzeige wärend des Ausführens eines Statements Datenbankprogrammierung 13
N executeUpdate "innerhalb" eines Resultsets Datenbankprogrammierung 14
S Select eines bestimmten Datensatzes Datenbankprogrammierung 4
J Kopieren eines Datensatzes Datenbankprogrammierung 4
R Effiziente Java-Methode zum finden eines freien PK Datenbankprogrammierung 7
M Zugriff auf eine Access-Datenbank innerhalb eines jar-Files Datenbankprogrammierung 7
brainray Bei MySQL alle Datenbanken eines Servers abfragen Datenbankprogrammierung 3
1 User die Rechte eines Datenbankerstellers zuweisen? Datenbankprogrammierung 3
X SQL Abfrage für Ähnlichkeit eines Strings Datenbankprogrammierung 2
B SQL Abfrage. Nur den ersten eines Blocks Datenbankprogrammierung 2
M Passwort eines Technischen Users hinterlegen Datenbankprogrammierung 6
A JPA: Zweite Instanz eines Entitätsobjekts Datenbankprogrammierung 3
M Konvertierung eines Ojects to String Datenbankprogrammierung 3
T Datenbanknamen eines Datenbankservers auslesen Datenbankprogrammierung 9
J Größe eines ResultSets Datenbankprogrammierung 12
G Problem beim Schreiben eines Dateipfads in MySQL-DB Datenbankprogrammierung 9
G Löschen eines Eintrages verbunden mit JList Datenbankprogrammierung 5
F Filtern innerhalb eines Resultset Datenbankprogrammierung 12
F die DN eines LDAP verzeichnisses abfragen Datenbankprogrammierung 2
B Laden eines JDBC Treiber. Datenbankprogrammierung 7
N Struktur eines Datenbankinterface? Datenbankprogrammierung 7
P Wirkliche Zeilenanzahl eines ResultSets ermitteln Datenbankprogrammierung 22
K frage zum ausführen eines INSERT statements Datenbankprogrammierung 16
K errechnen eines mittelwertes vom jdbc rSet Datenbankprogrammierung 4
M Abfrage trennt Ergbnis eines Atrributes nach den Leerzeichen Datenbankprogrammierung 4
F Abfrage eines DB Feldes aus einer mySQL Datenbank Datenbankprogrammierung 2
K Datenbank eines Forums nutzen Datenbankprogrammierung 11
B Zeilenzahl eines ResultSet ermitteln Datenbankprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben