結果セットと列のストリーミング getXXXStream requestsStreaming columnsretrieving from ResultSets using getXXXStream methods

もし元となるオブジェクトがOutputStreamクラスであれば、getBinaryStreamはそのオブジェクトを直接返します。

getAsciiStreamgetUnicodeStreamgetBinaryStream 可能な型であればgetXXXStreamメソッドにより、列をストリーミングしてResultSetからフィールドを取得することができます。 何らかのストリームを利用可能な型の一覧については、を参照してください。(また、も参照してください。)

実際にストリームとして記録されているか否かにかかわらず、型に従いストリームとして取得することが可能か決まります。

次の例ではLONG VARCHARの列がストリームとして取得されます。 // データをストリームとして取得する。 ResultSet rs = s.executeQuery("SELECT b FROM atable"); while (rs.next()) { // java.io.InputStreamを使ってデータを取得する。 java.io.InputStream ip = rs.getAsciiStream(1); // ストリームを処理する。--これはデータを出力する // 一般的なやり方である。 int c; int columnSize = 0; byte[] buff = new byte[128]; for (;;) { int size = ip.read(buff); if (size == -1) break; columnSize += size; String chunk = new String(buff, 0, size); System.out.print(chunk); } } rs.close(); s.close(); conn.commit();