2.4. ResultSet


NEXT | PREVIOUS | CONTENT

Ein ResultSet ...

Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(
  "SELECT anInt, aString, aFloat FROM Table1");

while (resultSet.next()) {
  int    anInt   = resultSet.getInt("anInt");
  String aString = resultSet.getString("aString");
  float  aFloat  = resultSet.getFloat("aFloat");
  System.out.println("Zeile: " + anInt + " | " + aString + " | " + aFloat);
}

String    query     = "select * from Table2";
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(query);

ResultSetMetaData metaData = resultSet.getMetaData();
int columnCount = metaData.getColumnCount();

for (int i=1; i<=columnCount; i++) {
  String s = metaData.getColumnTypeName(i);
  System.out.println ("Spalte " + i + " hat den Typ " + s);
}

Benutzung von Streams:

Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT x FROM Table3");

// Resultate in 4K-Stuecken erhalten
byte[] buffer = new byte[4096];
while (resultSet.next()) {
  java.io.InputStream fin = resultSet.getAsciiStream(1);
  for (;;) {
    int size = fin.read(buffer);
    if (size == -1) break;  // am Stream-Ende
    // buffer an einen ASCII-OutputStream senden
    output.write(buffer, 0, size);
  }
}

Resultat NULL: