MySQL 8.4 版本注意事項
DROP FUNCTION [IF EXISTS] function_name
此語法會刪除名為 function_name
的可載入函式。(DROP FUNCTION
也用於刪除預存函式;請參閱第 15.1.29 節「DROP PROCEDURE 和 DROP FUNCTION 語法」)。
DROP FUNCTION
是 CREATE FUNCTION
的互補語法。它需要 DELETE
權限才能對 mysql
系統結構描述進行操作,因為它會從註冊函式的 mysql.func
系統資料表中移除資料列。
DROP FUNCTION
也會從 Performance Schema 的 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
,伺服器可能會意外關機。