gpt4 book ai didi

sql - 从 sql 表中查询二进制字段的一部分

转载 作者:行者123 更新时间:2023-11-29 13:38:11 25 4
gpt4 key购买 nike

一个新问题:在我的数据库中,我有一个带有二进制字段的表。我不想获取请求中的整个字段,而是获取其中的一部分,最好使用 ODBC。有可能吗?我正在使用 PostgreSQL 8.3 - 以防该特定 DBMS 存在解决方案。谢谢。

使用 SQLGetData 函数似乎可以逐部分获取数据,但我也想跳过 blob 的一部分,而不加载它。所以问题可以表述为:SQLGetData 读取 blob 时是否可以跳过一些字节?

最佳答案

如果你所说的 blob 是指 PostgreSQL bytea,那么你可以使用 select substring(bytea_column from ? for ?)

数据 blob 未压缩时速度很快 - 您应该使用 alter table tablename alter column bytea_column set storage external 防止自动压缩 bytea。只有在 alter table 之后插入的行不会被压缩,因此您应该在空表上执行此操作,或者在此命令后删除并重新插入所有数据。

我正在使用它以 block 的形式从数据库中检索 blob(二进制文件数据,如 DOC 或 PDF)。效果很好。

关于sql - 从 sql 表中查询二进制字段的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1554809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com