↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

已结束支持的版本: 7.3 / 7.2 / 7.1
历史版本。 PostgreSQL 7.1 已结束支持。 请参阅 当前版本手册.

9.6. 大对象:pglarge #

open — 打开大对象
close — 关闭大对象
read — 从大对象读取
write — 写入大对象
seek — 改变大对象中的当前位置
tell — 返回大对象中的当前位置
unlink — 删除大对象
size — 返回大对象的大小
export — 把大对象保存到文件

此对象处理与 PostgreSQL 大对象有关的所有请求。它内嵌并隐藏了所有“重复”变量(对象 OID 和连接),方式与 pgobject 所做的完全相同,因此只在函数调用中保留有意义的参数。它保留一个对创建它时所用的 pgobject 的引用,通过其参数发送请求。除了取消引用之外,对 pgobject 的任何修改都会影响 pglarge 对象。对初始 pgobject 取消引用不是问题,因为在大对象取消对其引用之前,Python 不会释放它。所有函数在调用出错时都返回一条通用的错误消息,无论实际错误是什么。对象的 error 属性允许获取确切的错误消息。

pglarge 对象定义了一组只读属性,允许获取关于它的一些信息。这些属性是:

oid

与该对象关联的 oid

pgcnx

用于创建该对象的 pgobject

error

连接的最近一条警告/错误消息

小心

在多线程环境中,error 可能被另一个使用同一 pgobject 的线程修改。请记住,这些对象是共享的,而不是复制的;在这种情况下如果要检查错误消息,你应当提供某种锁。OID 属性非常有用,因为它允许你之后重用该 OID,用一个 pgobject getlo() 方法调用创建 pglarge 对象。

关于 PostgreSQL 大对象接口的更多信息,另见第 2 章。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.