该 user_defined_functions 表包含每个自动注册的组件或插件的可加载函数,或者手动注册的 CREATE FUNCTION 语句。有关添加或删除表行的操作信息,请参见 第 7.7.1 节,“安装和卸载 Loadable Functions”。
该 user_defined_functions 表的名称来自于其创建时期的术语,用于描述现在所知的可加载函数(即用户定义函数,UDF)。
该 user_defined_functions 表具有以下列:
-
UDF_NAMESQL 语句中引用的函数名称。如果函数是通过
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,用于检查哪些可加载函数已安装。