If the underlying object is itself an OutputStream class, getBinaryStream returns the object directly.
To get a field from the ResultSet using streaming columns, you can use the getXXXStream methods if the type supports it. See Streamable JDBC Data Types for a list of types that support the various streams. (See also Mapping of java.sql.Types to SQL Types.)
You can retrieve data from one of the supported data type columns as a stream, whether or not it was stored as a stream.
// retrieve data as a stream
ResultSet rs = s.executeQuery("SELECT b FROM atable");
while (rs.next()) {
// use a java.io.Reader to get the data
java.io.Reader ip = rs.getCharacterStream(1);
// process the stream--this is just a generic way to
// print the data
char[] buff = new char[128];
int size;
while ((size = ip.read(buff)) != -1) {
String chunk = new String(buff, 0, size);
System.out.print(chunk);
}
}
rs.close();
s.close();
conn.commit();