该 user_defined_functions
表包含每个由组件或插件自动注册或由 CREATE FUNCTION
语句手动注册的可加载函数的行。有关添加或删除表行的操作的信息,请参见 第 7.7.1 节,“安装和卸载可加载函数”。
该 user_defined_functions
表的名称源于其最初用于这种现在称为可加载函数(即用户定义函数或 UDF)的函数类型的术语。
该 user_defined_functions
表具有以下列
UDF_NAME
在 SQL 语句中引用的函数名称。如果该函数是由
CREATE FUNCTION
语句注册的并且正在卸载过程中,则该值为NULL
。UDF_RETURN_TYPE
函数返回值类型。该值是
int
、decimal
、real
、char
或row
之一。UDF_TYPE
函数类型。该值是
function
(标量)或aggregate
之一。UDF_LIBRARY
包含可执行函数代码的库文件名称。该文件位于由
plugin_dir
系统变量命名的目录中。如果该函数是由组件或插件而不是由CREATE FUNCTION
语句注册的,则该值为NULL
。UDF_USAGE_COUNT
当前函数使用计数。这用于判断语句当前是否正在访问该函数。
该 user_defined_functions
表具有以下索引
主键为 (
UDF_NAME
)
TRUNCATE TABLE
不允许用于 user_defined_functions
表。
该 mysql.func
系统表也列出了已安装的可加载函数,但仅列出了使用 CREATE FUNCTION
安装的函数。该 user_defined_functions
表列出了使用 CREATE FUNCTION
安装的可加载函数,以及由组件或插件自动安装的可加载函数。这种差异使 user_defined_functions
比 mysql.func
更适合用于检查哪些可加载函数已安装。