Chapter 6. PyGreSQL - Python 接口

Table of Contents
6.1. pg 模块
6.2. pg 模块函数
联接 — 打开一个与数据库服务器的联接
get_defhost — 获取缺省的主机名 [DV]
set_defhost — 设置缺省的主机名字 [DV]
get_defport — 获取缺省的端口 [DV]
set_defport — 设置缺省的端口 [DV]
get_defopt — 获取缺省的选项声明[DV]
set_defopt — 设置缺省选项声明 [DV]
get_deftty — 获取缺省的联接调试终端声明 [DV]
set_deftty — 设置缺省连接调试终端声明 [DV]
get_defbase — 获取缺省数据库名字声明 [DV]
set_defbase — 设置缺省的数据库名字声明 [DV]
6.3. 联接对象∶ pgobject
query — 执行一条 SQL 命令
reset — 重置联接
close — 关闭数据库联接
fileno — 返回用于与数据库联接的套接字.
getnotify — 从服务器获取最后的通知
inserttable — 向一个表插入一个列表
putline — 向服务器套接字写出一行 [DA]
getline — 从服务器套接字获取一行 [DA]
endcopy — 同步客户端和服务器端 [DA]
locreate — 在数据库里创见一个大对象 [LO]
getlo — 从给定的 OID 制作一个大对象[LO]
loimport — 把一个文件输入为一个 PostgreSQL 大对象 [LO]
6.4. 数据库封装类∶ DB
pkey — 返回一个表的主键
get_databases — 获取系统中数据库的列表
get_tables — 获取联接的数据库里所有表的列表
get_attnames — 返回一个表里的字段的名字
get — 从一个数据库表里获取一个元组
insert — 向一个数据库表里插入一个元组
update — 更新一个数据库表
clear — 清空一个数据库表
delete — 从表中删除该行
6.5. 查询结果对象∶ pgqueryobject
getresult — 获取查询返回的数值
dictresult — 以一个字典列表的形式获取一个查询的返回值
listfields — 列出查询结果的字段名字.
fieldname — 通过代号获取名字
fieldnum — 通过字段名字获取代码
ntuples — 返回查询对象中元组的数量
6.6. 大对象∶ pglarge
open — 打开一个大对象
close — 关闭大对象
read — 从大对象中读
write — 写出到大对象
seek — 改变在大对象中的当前位置
tell — 返回在大对象中的当前位置
unlink — 删除大对象
size — 返回大对象的尺寸
export — 把大对象保留到文件中

作者: 由 D'Arcy J.M. Cain () 写作.是参照 Pascal Andre 写的代码写作的. Copyright © 1995, Pascal Andre. 进一步修改 Copyright © 1997-2000 D'Arcy J.M. Cain.

你既可以用老的比较成熟的由 pg 模块提供的 接口,也可以使用新的,遵循 Python DB-SIG 提出的 DB-API 2.0 规范的 pgdb 接口.

在这里我们只描述老的 pg API. 因为 PyGreSQL 不包含 DB-API 的描述,所以你应该阅读位于 http://www.python.org/topics/database/DatabaseAPI-2.0.html. 与该 API 相关的信息.

一个类教程的 DB-API 文档可以在 http://www2.linuxjournal.com/lj-issues/issue49/2605.html 找到.

6.1. pg 模块

pg 模块定义类三个对象∶

如果你想看看这些函数中的一些在使用中的例子,参阅 http://www.druid.net/rides,在那里你可以在页面底端找到一个链接 指向真正的 Python 代码.

6.1.1. 常量

pg 模块目录里定义了一些常量. 它们是准备用做方法调用的参数.你应该参考 libpq 的描述(Chapter 1) 获取关于它们的更多的信息.这些常量是∶

INV_READ
INV_WRITE

大对象访问模式,用于 (pgobject.)locreate(pglarge.)open

SEEK_SET
SEEK_CUR
SEEK_END

位置标志,用于 (pglarge.)seek

version
__version__

给出当前版本的常量