MySQL 8.3 Release Notes
DROP {PROCEDURE | FUNCTION} [IF EXISTS] sp_name
这些语句用于删除存储的例程(存储过程或函数)。也就是说,指定的例程将从服务器中删除。(DROP FUNCTION
也用于删除可加载函数;见 第 15.7.4.2 节,“DROP FUNCTION 语句 for 可加载函数”。)
要删除存储的例程,您必须拥有该例程的 ALTER ROUTINE
权限。(如果 automatic_sp_privileges
系统变量启用,那么该权限和 EXECUTE
将自动授予例程创建者在创建时,并在删除时从创建者中删除。见 第 27.2.2 节,“存储例程和 MySQL 权限”。)
此外,如果例程的定义者拥有 SYSTEM_USER
权限,那么删除它的用户也必须拥有这个权限。
The IF EXISTS
子句是一个 MySQL 扩展。它防止了如果过程或函数不存在时出现错误。一个警告将被生成,可以使用 SHOW WARNINGS
查看。
DROP FUNCTION
也用于删除可加载函数(见 第 15.7.4.2 节,“DROP FUNCTION 语句 for 可加载函数”)。