CREATE ACCESS METHOD(7) PostgreSQL 16.2 Documentation CREATE ACCESS METHOD(7) NAME CREATE_ACCESS_METHOD - define a new access method SYNOPSIS 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 63 and the index access method API is described in Chapter 64. 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 (DROP_ACCESS_METHOD(7)), CREATE OPERATOR CLASS (CREATE_OPERATOR_CLASS(7)), CREATE OPERATOR FAMILY (CREATE_OPERATOR_FAMILY(7)) PostgreSQL 16.2 2024 CREATE ACCESS METHOD(7)