Java und Postgresql

Hallo zusammen,

hab mir mit Java einen zugriff auf meine postgresql datenbank gemacht
leider kann ich nur select * from person abfragen
würde aber gerne select vorname, nachname, Geburtsdatum from person machen.

leider kommt folgender kompilerfehler:

org.postgresql.util.PSQLException: Der Spaltenindex 2 ist außerhalb des gültigen Bereichs. Anzahl Spalten: 1.
at org.postgresql.jdbc2.AbstractJdbc2ResultSetMetaData.getField(AbstractJdbc2ResultSetMetaData.java:422)
at org.postgresql.jdbc2.AbstractJdbc2ResultSetMetaData.getColumnLabel(AbstractJdbc2ResultSetMetaData.java:162)
at Database.showTimezones(Database.java:126)
at Database.(Database.java:30)
at Database$1.run(Database.java:161)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)



kann mir jemand sagen an was das liegt?

try
    {
      Statement statement = connection.createStatement ();

      ResultSet resultSet = statement.executeQuery ("select * from person");
 
      ResultSetMetaData resultSetMetaData = resultSet.getMetaData ();
 
      String format = "%10s   %-20s   %-20s   %-10s  %s\n";
      //"-" mit dem Minus, werden die Datensätze linksbündig angeordnet
      
      System.out.printf (format + "\n",
                         resultSetMetaData.getColumnLabel (1),
                         resultSetMetaData.getColumnLabel (2),
                         resultSetMetaData.getColumnLabel (3),
                         resultSetMetaData.getColumnLabel (4),
                         resultSetMetaData.getColumnLabel (5));
 
      while (resultSet.next ())
      {
        System.out.printf (format,
                           resultSet.getString (1),
                           resultSet.getString (2),
                           resultSet.getString (3),
                           resultSet.getString (4),
                           resultSet.getString (5));
      }
 
      resultSet.close ();
      statement.close ();
    }
    catch (SQLException e)
    {
      e.printStackTrace ();
      System.exit (1);
    }

Hallo!
Schickst du uns das SQL, das den Fehler verursacht und die Tabellendefinition?
Mögliche Ursache: Wenn dein Feld “Geburtsdatum” so in der DB steht wie hier, musst du es im übergebenen String in Anführungszeichen setzen, da Postgres alles sonst als kleingeschrieben verwendet.

Gruß Uwe

Danke, hat sich erledigt, hatte in Java einen kleinen Fehler