# Spaltennamen einer MS Access Tabelle ermitteln



## MathiasBauer (9. Okt 2009)

Hallo zusammen,

ich würde gerne aus einer MS Access Tabelle die Spaltennamen auslesen.
Mein erster Gedanke war das mit reinem SQL zu probieren, so wie in etwa bei MySQL "Show Columns".
Hat irgendjemand einen Tipp für mich? Vielen Dank im Voraus!


----------



## arthur177 (10. Okt 2009)

Tipp: Befasse dich mit dem Resultset bzw. ResultsetMetaData


----------



## arthur177 (10. Okt 2009)

Hier ml noch ein kleines Beispiel wie man die Spaltennamen auslesen kann in Java


```
public String[] getSpaltennamen(String tabellenname) throws SQLException
  {
    String[] spnamen = null;
    String fehler = "Die Verbindung zur Datenbank "+path
                    +" konnte nicht hergestellt werden";
    
    try
    {
      Connection con = DriverManager.getConnection(url,login,passwd);
      fehler = "Statementobjekt konnte nicht erzeugt werden.";
      Statement stm = con.createStatement();
      String sqlstring = "SELECT * FROM "+tabellenname;
      fehler = "Die SQL-Abfrage '"+sqlstring+"' führte zu einem Fehler.";
      ResultSetMetaData rsmd = stm.executeQuery(sqlstring).getMetaData();
      
      int sp = rsmd.getColumnCount();
      spnamen = new String[sp];
      
      for( int i = 0; i < sp; i++ )
        spnamen[i] = rsmd.getColumnName(i+1);
      
      stm.close();
      con.close();      
      stm = null;
      con = null;
    }
    catch( SQLException sqle)
    {
      throw new SQLException(fehler+"\n"+sqle.toString()+"\n");
    }
    return spnamen;
   }
```


----------



## MathiasBauer (10. Okt 2009)

Vielen Dank!

"ResultSetMetaData" war genau das was ich gesucht habe.


----------

