MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  ...  /  DROP PROCEDURE および DROP FUNCTION ステートメント

13.1.29 DROP PROCEDURE および DROP FUNCTION ステートメント

DROP {PROCEDURE | FUNCTION} [IF EXISTS] sp_name

これらのステートメントは、ストアドルーチン (ストアドプロシージャーまたはストアドファンクション) を削除するために使用されます。 つまり、指定されたルーチンがサーバーから削除されます。 (DROP FUNCTION は、ユーザー定義関数の削除にも使用されます。セクション13.7.4.2「ユーザー定義関数に対する DROP FUNCTION ステートメント」 を参照してください。)

ストアドルーチンを削除するには、そのストアドルーチンに対する ALTER ROUTINE 権限が必要です。 (automatic_sp_privileges システム変数が有効になっている場合は、その権限と EXECUTE が自動的に、そのルーチンが作成されるときはルーチン作成者に付与され、そのルーチンが削除されるときは作成者から削除されます。 セクション25.2.2「ストアドルーチンと MySQL 権限」を参照してください。)

IF EXISTS 句は MySQL 拡張です。 これは、プロシージャーまたは関数が存在しない場合にエラーが発生しないようにします。 SHOW WARNINGS で表示できる警告が生成されます。

DROP FUNCTION はまた、ユーザー定義関数を削除するためにも使用されます (セクション13.7.4.2「ユーザー定義関数に対する DROP FUNCTION ステートメント」を参照してください)。


関連キーワード:  ステートメント, CREATE, DROP, TABLE, FUNCTION, 関数, サブクエリー, 定義, SLAVE, PROCEDURE