MySQL 9.0 发行说明
DROP FUNCTION [IF EXISTS] function_name
此语句删除名为 function_name
的可加载函数。(DROP FUNCTION
也用于删除存储函数;请参阅 第 15.1.29 节“DROP PROCEDURE 和 DROP FUNCTION 语句”。)
DROP FUNCTION
是 CREATE FUNCTION
的补充。它需要对 mysql
系统架构的 DELETE
权限,因为它会删除 mysql.func
系统表中注册该函数的行。该系统表用于注册函数。
DROP FUNCTION
还会从性能架构的 user_defined_functions
表中删除该函数,该表提供已安装可加载函数的运行时信息。请参阅 第 29.12.22.10 节“user_defined_functions 表”。
在正常启动序列期间,服务器会加载在 mysql.func
表中注册的函数。由于 DROP FUNCTION
会删除已删除函数的 mysql.func
行,因此服务器在后续重启期间不会加载该函数。
DROP FUNCTION
不能用于删除由组件或插件自动安装的可加载函数,而不是使用 CREATE FUNCTION
安装的函数。当安装该函数的组件或插件被卸载时,该函数也会被自动删除。
注意
要升级与可加载函数关联的共享库,请发出 DROP FUNCTION
语句,升级共享库,然后发出 CREATE FUNCTION
语句。如果先升级共享库,然后再使用 DROP FUNCTION
,服务器可能会意外关闭。