pg_am
pg_am
pg_am表存储有关索引访问方法的信息。 系统所支持的每一种索引访问方法都有一行。
列 | 类型 | 参考 | 描述 |
---|---|---|---|
oid | oid | 行标识符(隐藏属性;必须显式选择) | |
amname | name | 访问方法的名称 | |
amstrategies | int2 | 此访问方法的运算符策略数,如果访问方法没有一组固定的运算符策略,则为零 | |
amsupport | int2 | 此访问方法的支持例程数量 | |
amcanorder | boolean | 访问方法是否支持按索引列的值排序的有序扫描? | |
amcanorderbyop | boolean | 访问方法是否支持按索引列上的运算符结果排序的有序扫描? | |
amcanbackward | boolean | 访问方法是否支持后向扫描? | |
amcanunique | boolean | 访问方法是否支持唯一索引? | |
amcanmulticol | boolean | 访问方法是否支持多列索引? | |
amoptionalkey | boolean | 访问方法是否支持对第一个索引列没有任何约束的扫描? | |
amsearcharray | boolean | 访问方法是否支持ScalarArrayOpExpr搜索? | |
amsearchnulls | boolean | 访问方法是否支持IS NULL/NOT NULL搜索? | |
amstorage | boolean | 索引存储数据类型可以与列数据类型不同吗? | |
amclusterable | boolean | 这种类型的索引可以聚集在一起吗? | |
ampredlocks | boolean | 这种类型的索引是否管理细粒度的谓词锁? | |
amkeytype | oid | pg_type.oid | 存储在索引中的数据类型,如果不是固定类型,则为零 |
aminsert | regproc | pg_proc.oid | “插入此元组”函数 |
ambeginscan | regproc | pg_proc.oid | “准备索引扫描”函数 |
amgettuple | regproc | pg_proc.oid | “下一个有效元组”函数,如果没有则为零 |
amgetbitmap | regproc | pg_proc.oid | “获取所有元组”函数,如果没有,则返回零 |
amrescan | regproc | pg_proc.oid | “(重新)启动索引扫描”函数 |
amendscan | regproc | pg_proc.oid | “索引扫描后清理”函数 |
ammarkpos | regproc | pg_proc.oid | “标记当前扫描位置”函数 |
amrestrpos | regproc | pg_proc.oid | “恢复标记的扫描位置”函数 |
ambuild | regproc | pg_proc.oid | “建立新的索引”函数 |
ambuildempty | regproc | pg_proc.oid | “构建空索引”函数 |
ambulkdelete | regproc | pg_proc.oid | 批量删除函数 |
amvacuumcleanup | regproc | pg_proc.oid | Post-VACUUM清理功能 |
amcanreturn | regproc | pg_proc.oid | 用于检查索引是否支持仅索引扫描的函数,如果没有则支持零 |
amcostestimate | regproc | pg_proc.oid | 用于估计索引扫描成本的函数 |
amoptions | regproc | pg_proc.oid | 为索引解析和验证reloptions的函数 |