Spaltenindex außerhalb gültigem Bereich

Status
Nicht offen für weitere Antworten.
Hallo,
ich bin Neuling; ein Problem mit einer Schleife und dem rechtzeitigen stoppen über den Boolean-Wert mit result.next() kann ich nicht verstehen.
Es gibt nur 3 Spaltennamen (id, name, adresse) in "tabelle1", die probeweise ausgeben lassen will.
Ich verstehe nicht, warum die Iteration nicht rechtzeitig beendet wird. .next() müsste doch beim vierten nicht vorhandenen Spaltenindex die Schleife stoppen lassen/false ausgeben.

Statt next() macht auch Methode isLast() den gleichen Fehler.
Auch die do-while Schleife hilft nicht.

Code:
          statement = con.prepareStatement("select * from tabelle1");
          result = statement.executeQuery(); 

...
          int i=0;
          while (result.next()) {
        	  i++;
        	  s = result.getMetaData().getColumnLabel(i);
        	  // System.out.println(result.getMetaData().getColumnLabel(i));
        	  // System.out.println("> " + ColNames[i] + " ");
        	  System.out.println(" > " +s);
          }
...

Fehlermeldung:
> id
> name
> adresse
Exception in thread "main" org.postgresql.util.PSQLException: Der Spaltenindex 4 ist ausserhalb des gültigen Bereichs. Anzahl Spalten: 3.
at org.postgresql.jdbc2.AbstractJdbc2ResultSetMetaData.getField(AbstractJdbc2ResultSetMetaData.java:418)
at org.postgresql.jdbc2.AbstractJdbc2ResultSetMetaData.getColumnLabel(AbstractJdbc2ResultSetMetaData.java:160)
at dbAbfragen.datenbankAbfrage4.nameAbfragen(datenbankAbfrage4.java:51)
at dbAbfragen.datenbankAbfrage4.main(datenbankAbfrage4.java:76)


Danke für Hilfe,
bs
 
S

SlaterB

Gast
result.next() beziehst sich auf die Anzahl der Zeilen, der Einträge in der Tabelle,
was hat das mit den Spalten zu tun?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Gossi CallableStatement Ungültiger Spaltenindex Datenbankprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben