【问题标题】:How to read text from the BLOB format?如何读取 BLOB 格式的文本?
【发布时间】:2012-05-27 20:57:01
【问题描述】:

我通过将 pdf/word 文档保存为 blob 格式将它们保存在数据库中。 现在我想把它读成字符串。 我的意图只是将保存的 blob 内容读取为字符串,以便我可以搜索文本。

例如:如果上传了几个不同类型的文档,我想在其中搜索文本。

何可以实现?

提前致谢。

【问题讨论】:

    标签: php apache2 type-conversion blob binary-data


    【解决方案1】:

    首先,BLOB 是一个 BINARY LOB,您正确地使用了它 - 将 tha 文件存储到数据库中。由于它是 BINARY,因此该列中的数据也以其二进制形式存储。因此我不确定您是否可以在二进制数据中搜索文本...

    无论如何,您应该可以通过以下方式做到这一点:

    $conn = oci_connect('user', 'pass', 'server');
    $q = "SELECT blob_column FROM my_blob_table WHERE my_blob_id = :id";
    $stmt = oci_parse($conn, $q);
    oci_bind_by_name($stmt, ':id', $id);
    oci_execute($stmt);
    $res = oci_fetch_assoc($stmt);
    $blob = $res['blob_column']->read($res['blob_column']->size());
    var_dump($blob);
    

    如果您想将数据存储为文本,请改用 CLOB (CHARACTER LOB) 列。

    【讨论】:

    • 嗨.. 如果使用 oracle 作为数据库,上面的这段代码是有效的。我正在使用 mysql 作为数据库,请告诉我如何从 blob 数据中获取文本内容....
    猜你喜欢
    • 1970-01-01
    • 2021-01-09
    • 2017-05-19
    • 1970-01-01
    • 1970-01-01
    • 2012-11-25
    • 2019-11-12
    • 2022-06-10
    • 1970-01-01
    相关资源
    最近更新 更多