内部関数

PostgreSQL 9.1.1文書
前のページ | 巻戻し | 第 35章SQLの拡張 | 早送り | 次のページ

# 35.8. 内部関数

内部関数とは、Cで作成された、PostgreSQLサーバに静的にリンクされた関数です。 関数定義の"本体"では関数のC言語における名前を指定します。 この名前をSQLでの使用のために宣言される名前と同じにする必要はありません。 （後方互換性のため、C言語関数名がSQL名と同じであるという意味として、空の本体も受け付けられます。）

通常、サーバに存在するすべての内部関数は、データベースクラスタの初期化（項17.2参照）の際に宣言されますが、ユーザは`CREATE FUNCTION`を使用して、内部関数の別名をさらに作成することができます。 内部関数は`internal`という言語名を付けた`CREATE FUNCTION`によって宣言されます。 例えば、`sqrt`関数の別名を作成するには以下のようにします。

    CREATE FUNCTION square_root(double precision) RETURNS double precision
        AS 'dsqrt'
        LANGUAGE internal
        STRICT;

（ほとんどの内部関数は"strict"として宣言されることを想定しています。）

> 注意: "定義済みの"関数のすべてが上の意味での"内部"ではありません。 SQLで作成された定義済み関数もあります。

前のページ | ホーム | 次のページ
手続き型言語関数 | 上に戻る | C言語関数