Wie man Spaltennamen in eine Datenbanktabelle in Java

January 5

Wie man Spaltennamen in eine Datenbanktabelle in Java

Java verfügt über eine Reihe leistungsstarker Datenbankklassen JDBC genannt. Mit diesen Tools können Java-Entwickler, mit nur wenigen Ausnahmen mit einer Vielzahl von gängigen Datenbanken ohne Änderungen im Code arbeiten. Jedoch sind einige Aufgaben, z. B. Abrufen von Spaltennamen aus einer Abfrage nicht sofort intuitiv mithilfe der gemeinsamen Verbindung, Anweisung und ResultSet-Klassen.

Anweisungen

1 Importieren Sie die erforderlichen Klassen, indem Sie Folgendes in Ihren Code einfügen:

Import java.sql.ConnectionGEHENImport java.sql.DriverManagerGEHENjava.sql.ResultSet importierenGEHENImport java.sql.ResultSetMetaDataGEHENImport java.sql.SQLExceptionGEHENImportieren Sie java.sql.Statement;

2 Mit der Datenbank verbinden. Du musst umgeben die meisten Befehle in den folgenden Schritten mit einem Try-Catch-Anweisung mit SQLException Fehlern umgegangen, die entstehen können.

Connection con = DriverManager.getConnection(\"jdbc:derby://localhost:1527/sample\", \"user\", \"pass\")

GEHEN

Ändern Sie das Wort \"derby\" auf den Namen des Datenbank-Programm Sie verwenden. Z. B. \"mysql\" für MySQL.

Die beiden letzten Argumente im Beispiel \"user\" und \"pass,\" darstellen, passenderweise den Benutzernamen und das Kennwort für Ihre Datenbank.

3 Erstellen und Ausführen einer Anweisung für diese Verbindung. Die Ergebnisse der Anweisung als ein ResultSet abrufen.

Statement s = con.createStatement()

GEHEN

ResultSet rs = s.executeQuery(\"select * from APP.Customer\")

GEHEN

Dies führt eine Abfrage aus, um alle Informationen aus der Tabelle Kunden in der APP-Datenbank zu erhalten. Sie können es mit jeder gültigen SQL-Befehl für die Datenbank ersetzen, die Sie verwenden.

4 Erhalten die \"metadata\" für das ResultSet und ResultSetMetaData-Klasse zu speichern.

ResultSetMetaData rsm = rs.getMetaData()

GEHEN

Wie Sie vermuten vielleicht, bezeichnet Metadaten Informationen, die Ihrer Abfrage beschreibt. Dazu gehören nicht nur Spaltennamen, aber auch Informationen wie der Name des Schemas, Datentypen für Spalten, und ob eine Spalte null-Werte zulässt.

5 Erhalten Sie die Spaltennamen und Drucken Sie diese auf dem Bildschirm auf separaten Zeilen.

for (int x = 1; x <= rsm.getColumnCount(); x++) { System.out.println(rsm.getColumnName(x))

GEHEN

}

Tipps & Warnungen

  • Im Gegensatz zu fast alles, was sonst in Java beginnen die Spaltennamen in der JDBC ResultSetMetaData-Klasse bei einer anstatt NULL. Spalte 0 (null) aus Gewohnheit zuzugreifen versucht, wird einen Laufzeitfehler generiert.