CREATE ACCESS METHOD — 新しいアクセスメソッドを定義する
CREATE ACCESS METHODname
TYPEaccess_method_type
HANDLERhandler_function
CREATE ACCESS METHOD
は新しいアクセスメソッドを作成します。
アクセスメソッドの名前はデータベース内で一意でなければなりません。
スーパーユーザのみが新しいアクセスメソッドを定義できます。
name
作成するアクセスメソッドの名前です。
access_method_type
この句では定義するアクセスメソッドの型を指定します。
現在のところ、INDEX
だけがサポートされています。
handler_function
handler_function
はアクセスメソッドを表す、事前に登録された関数の名前(スキーマ修飾可)です。
ハンドラ関数はinternal
型の引数を1つだけ取るものとして定義される必要があります。
戻り値の型はアクセスメソッドの型に依存し、INDEX
のアクセスメソッドの場合は、index_am_handler
でなければなりません。
ハンドラ関数が実装しなければならないC言語でのAPIはアクセスメソッドの型によって変わります。
INDEXのアクセスメソッドのAPIについては第61章に説明されています。
INDEXのアクセスメソッドheptree
をハンドラ関数heptree_handler
で作成するには、次のようにします。
CREATE ACCESS METHOD heptree TYPE INDEX HANDLER heptree_handler;
CREATE ACCESS METHOD
はPostgreSQLの拡張です。