內部函數是以 C 語言編寫,並已靜態連結到 PostgreSQL 伺服器的函數。 函數定義的 「本體」 指定函數的 C 語言名稱,該名稱不必與宣告的 SQL 用名稱相同。(由於回溯相容性的原因,空本體會被接受,表示 C 語言函數名稱與 SQL 名稱相同。)
通常,伺服器中存在的所有內部函數都會在資料庫叢集初始化期間宣告(請參閱第 18.2 節),但使用者可以使用 CREATE FUNCTION
為內部函數建立額外的別名。內部函數使用語言名稱 internal
在 CREATE FUNCTION
中宣告。例如,要為 sqrt
函數建立別名
CREATE FUNCTION square_root(double precision) RETURNS double precision AS 'dsqrt' LANGUAGE internal STRICT;
(大多數內部函數都希望宣告為 「strict」。)
並非所有「預定義」函數都是上述意義上的「內部」函數。 一些預定義函數是用 SQL 編寫的。
如果您在文件中看到任何不正確、與特定功能的體驗不符或需要進一步澄清的地方,請使用此表單報告文件問題。