该 user_defined_functions
表包含每个自动注册的组件或插件的可加载函数,或者手动注册的 CREATE FUNCTION
语句。有关添加或删除表行的操作信息,请参见 第 7.7.1 节,“安装和卸载 Loadable Functions”。
该 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
,用于检查哪些可加载函数已安装。