↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 7.3 / 7.2 / 7.1
历史版本PostgreSQL 7.1 已于 2006 年 4 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

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 章。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。