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

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

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

17.2. 访问方法 #

pg_am 表为每个索引访问方法保存一行。堆访问方法的支持内置于 PostgreSQL 中,但所有其他访问方法都在 pg_am 中描述。其模式如表 17.1所示。

表 17.1. 索引访问方法模式

列 描述
amname 访问方法的名称
amowner 属主的用户 ID(当前未使用)
amstrategies 该访问方法的策略数目(见下文)
amsupport 该访问方法的支持例程数目(见下文)
amorderstrategy 如果索引不提供排序顺序则为零,否则是描述该排序顺序的策略操作符的策略号
amcanunique 该访问方法是否支持唯一索引?
amcanmulticol 该访问方法是否支持多列索引?
amindexnulls 该访问方法是否支持 NULL 索引项?
amconcurrent 该访问方法是否支持并发更新?
amgettuple  
aminsert  
... 访问方法接口例程的过程标识符。例如,打开、关闭访问方法以及从中获取行的 regproc ID 就出现在这里。


pg_am 中该行的对象 ID 被用作许多其他表中的外键。你不需要向这个表添加新行;你所关心的只是你想扩展的访问方法的对象 ID:

SELECT oid FROM pg_am WHERE amname = 'btree';

 oid
-----
 403
(1 row)

我们稍后会在 WHERE 子句中使用该查询。

提交更正

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