java - 如何查询 blob?

标签 java sql jdbc blob

我想创建返回一些值的 SQL 查询,其中一个值是 blob

当我将 blob 列放入选择中时,它会返回 BigDecimal :|

带有参数的普通 JDBC 查询

最佳答案

查看 Materializing Blob Data 上的 javadocs 部分.

您需要对 blob 列调用 getBlob,然后读取二进制流。

    Blob blob = rs.getBlob("BLOB_COLUMN_NAME");        
    InputStream blobStream = blob.getBinaryStream();

    //e.g. save blob to a file
    FileOutputStream out = new FileOutputStream("file.txt");
    byte[] buffer = new byte[1024];
    int n = 0;  
    while( (n = blobStream.read(buffer)) != -1 ) {
        out.write(buffer, 0, n);
    }
    out.flush();
    out.close();
    blobStream.close();

关于java - 如何查询 blob?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4813989/

相关文章:

Java 处理多个客户端套接字

java - 在没有 Spring MVC 的情况下使用 Spring session 范围 Bean

java - 从 java config 加载额外的 spring 配置文件

php - 外键可以为空或留空吗?

java - 通过 JDBC 在 Oracle 中选择和更新一百万行的性能不佳

java - 无法从 MarkLogic Java API 访问文件

MySQL 父级详细信息(如果是子帐户)

mysql - 根据另一个表中的值从一个表中选择多个值

java - javax.sql 和 java.sql 之间的区别?

hadoop - 连接到 Hortonworks Hadoop/Hive