Theuser_defined_functions
table contains a row for each loadable function registered automatically by a component or plugin, or manually by aCREATE FUNCTION
statement. For information about operations that add or remove table rows, seeInstalling and Uninstalling Loadable Functions.
The name of theuser_defined_functions
table stems from the terminology used at its inception for the type of function now known as a loadable function (that is, user-defined function, or UDF).
Theuser_defined_functions
table has these columns:
UDF_NAME
The function name as referred to in SQL statements. The value is
NULL
if the function was registered by aCREATE FUNCTION
statement and is in the process of unloading.UDF_RETURN_TYPE
The function return value type. The value is one of
int
,decimal
,real
,char
, orrow
.UDF_TYPE
The function type. The value is one of
function
(scalar) oraggregate
.UDF_LIBRARY
The name of the library file containing the executable function code. The file is located in the directory named by the
plugin_dir
system variable. The value isNULL
if the function was registered by a component or plugin rather than by aCREATE FUNCTION
statement.UDF_USAGE_COUNT
The current function usage count. This is used to tell whether statements currently are accessing the function.
Theuser_defined_functions
table has these indexes:
Primary key on (
UDF_NAME
)
TRUNCATE TABLE
is not permitted for theuser_defined_functions
table.
Themysql.func
system table also lists installed loadable functions, but only those installed usingCREATE FUNCTION
. Theuser_defined_functions
table lists loadable functions installed usingCREATE FUNCTION
as well as loadable functions installed automatically by components or plugins. This difference makesuser_defined_functions
preferable tomysql.func
for checking which loadable functions are installed.