↑↓ select↵ open⌫ change scopeOpen full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / SQL Commands

CREATE ACCESS METHOD

define a new access method

English manual coverage begins with PostgreSQL 6.4. Source history and runtime observations have their own recorded version boundaries.

Reading PG 18·Select a recorded version

anchor
SQL-CREATE-ACCESS-METHOD
file
sql-create-access-method.html
lang
en
name
CREATE ACCESS METHOD
purpose
define a new access method
purpose zh
定义一种新的访问方法
sections same as
Unknown
slug
18
synopsis html
CREATE ACCESS METHOD <em class="replaceable"><code>name</code></em> TYPE <em class="replaceable"><code>access_method_type</code></em> HANDLER <em class="replaceable"><code>handler_function</code></em>
synopsis text
CREATE ACCESS METHOD name TYPE access_method_type HANDLER handler_function

Syntax

CREATE ACCESS METHOD name
TYPE access_method_type
HANDLER handler_function
Syntax diagrams

Read left to right. Branches are choices, bypasses are optional, loops repeat. Select an underlined parameter to open its rule.

CREATE ACCESS METHOD name TYPE access_method_type HANDLER handler_function

Definition PG 18

CREATE ACCESS METHOD name
TYPE access_method_type
HANDLER handler_function

Description

CREATE ACCESS METHOD creates a new access method.

The access method name must be unique within the database.

Only superusers can define new access methods.

Parameters

name

The name of the access method to be created.

access_method_type

This clause specifies the type of access method to define. Only TABLE and INDEX are supported at present.

handler_function

handler_function is the name (possibly schema-qualified) of a previously registered function that represents the access method. The handler function must be declared to take a single argument of type internal, and its return type depends on the type of access method; for TABLE access methods, it must be table_am_handler and for INDEX access methods, it must be index_am_handler. The C-level API that the handler function must implement varies depending on the type of access method. The table access method API is described in Chapter 62 and the index access method API is described in Chapter 63.

Examples

Create an index access method heptree with handler function heptree_handler:

CREATE ACCESS METHOD heptree TYPE INDEX HANDLER heptree_handler;

Compatibility

CREATE ACCESS METHOD is a PostgreSQL extension.

See Also

DROP ACCESS METHOD, CREATE OPERATOR CLASS, CREATE OPERATOR FAMILY

Compare versions

Source references

Full definition and evidence JSON

Definition sources

center · PostgreSQL 18 · wiki-repair-20261023:9f018a629850b9f8c1a9e3673b6898903981f7c8785b077741dc22ce74626b89

Text language: en · wiki-repair-20261023:9f018a629850b9f8c1a9e3673b6898903981f7c8785b077741dc22ce74626b89