ResultSets e colunas de fluxo

Se o objeto subjacente tamb??m for da classe OutputStream, getBinaryStream retornar?? o objeto diretamente.

Para obter um campo do ResultSet utilizando colunas de fluxo, podem ser utilizados os m??todos getXXXStream se o tipo suport??-los. Para obter uma lista dos tipos que suportam v??rios fluxos deve ser consultado Tipos de dado JDBC que permitem fluxo (Consulte tamb??m Mapeamento de java.sql.Types em tipos SQL.)

Os dados de uma coluna com tipo de dado suportado podem ser trazidos na forma de fluxo, independentemente de terem sido armazenados como um fluxo.

O exemplo a seguir mostra como o usu??rio pode trazer uma coluna LONG VARCHAR na forma de fluxo:
// trazer os dados como um fluxo
ResultSet rs = s.executeQuery("SELECT b FROM minha_tabela");
while (rs.next()) {
    // utilizar java.io.InputStream para trazer os dados
    java.io.InputStream ip = rs.getAsciiStream(1);
    // processar o fluxo -- esta ?? apenas uma forma gen??rica
    // de se mostrar os dados
    int c;
    int tamanhoColuna = 0;
    byte[] buff = new byte[128];
    for (;;) {
        int size = ip.read(buff);
        if (size == -1)
            break;
        tamanhoColuna += size;
        String chunk = new String(buff, 0, size);
        System.out.print(chunk);
    }
}
rs.close();
s.close();
conn.commit();