支援的版本:目前版本 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

36.9. 內部函數 #

內部函數是以 C 語言編寫,並已靜態連結到 PostgreSQL 伺服器的函數。 函數定義的 本體 指定函數的 C 語言名稱,該名稱不必與宣告的 SQL 用名稱相同。(由於回溯相容性的原因,空本體會被接受,表示 C 語言函數名稱與 SQL 名稱相同。)

通常,伺服器中存在的所有內部函數都會在資料庫叢集初始化期間宣告(請參閱第 18.2 節),但使用者可以使用 CREATE FUNCTION 為內部函數建立額外的別名。內部函數使用語言名稱 internalCREATE FUNCTION 中宣告。例如,要為 sqrt 函數建立別名

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

(大多數內部函數都希望宣告為 strict。)

注意

並非所有預定義函數都是上述意義上的內部函數。 一些預定義函數是用 SQL 編寫的。

提交更正

如果您在文件中看到任何不正確、與特定功能的體驗不符或需要進一步澄清的地方,請使用此表單報告文件問題。