lo_from_bytea()

用于创建和填充大对象的函数

lo_from_bytea() 是一个用于创建大型对象并用数据填充它的系统函数。

lo_from_bytea() 添加于PostgreSQL 9.4

用法

lo_from_bytea ( loid oid, data bytea ) → oid

如果 loid0,则会自动分配一个 OID,否则将使用提供的 OID。

成功时,返回创建的大对象的 OID,否则引发错误。

变更历史

示例

lo_from_bytea() 的基本用法示例

postgres=# SELECT lo_from_bytea(0, '\x48656c6c6f20776f726c64210a');
 lo_from_bytea 
---------------
         16388
(1 row)

postgres=# SELECT * FROM pg_largeobject;
 loid  | pageno |             data             
-------+--------+------------------------------
 16388 |      0 | \x48656c6c6f20776f726c64210a
(1 row)

尝试使用现有 OID 创建大对象

postgres=# SELECT lo_from_bytea(16388, '\xdeadbeef');
ERROR:  duplicate key value violates unique constraint "pg_largeobject_metadata_oid_index"
DETAIL:  Key (oid)=(16388) already exists.

分类

bytea大型对象系统函数

另请参阅

lo_put()lo_get()

反馈

提交任何关于 "lo_from_bytea()" 的评论、建议或更正 此处