Если под blob вы подразумеваете байт PostgreSQL, то вы можете просто использовать select substring(bytea_column from ? for ?)
.
Быстро, когда большой двоичный объект данных не сжимается - вы должны предотвратить автоматическое сжатие байтов, используя alter table tablename alter column bytea_column set storage external
. Только строки, вставленные после alter table
, не будут сжаты, поэтому вы должны сделать это в пустой таблице или удалить и заново вставить все данные после этой команды.
Я использую его для получения больших двоичных объектов (данных двоичных файлов, таких как DOC или PDF) из базы данных в виде фрагментов. Хорошо работает.