ALTER PROCEDURE proc_name [characteristic ...]
characteristic: {
COMMENT 'string'
| LANGUAGE SQL
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
}
このステートメントを使用すると、ストアドプロシージャーの特性を変更できます。 ALTER PROCEDURE
ステートメントでは、複数の変更を指定できます。 ただし、このステートメントを使用して、ストアドプロシージャーのパラメータまたは本体を変更することはできません。このような変更を行うには、DROP PROCEDURE
と CREATE PROCEDURE
を使用して、このプロシージャーを削除および再作成する必要があります。
このプロシージャーに対する ALTER ROUTINE
権限が必要です。 デフォルトでは、その権限は、プロシージャー作成者に自動的に付与されます。 この動作は、automatic_sp_privileges
システム変数を無効にすることによって変更できます。 セクション25.2.2「ストアドルーチンと MySQL 権限」を参照してください。