sql >> Base de Datos >  >> RDS >> Mysql

Cómo eliminar un procedimiento almacenado en MySQL

A veces, es posible que deba eliminar el procedimiento en MySQL o eliminar el procedimiento en MySQL, ya que ya no lo necesita. Aquí se explica cómo eliminar el procedimiento almacenado en MySQL usando la declaración MySQL DROP PROCEDURE. Puede usarlo para eliminar todos los procedimientos en MySQL o eliminar un procedimiento en MySQL.

Cómo eliminar un procedimiento almacenado en MySQL

Estos son los pasos para eliminar el procedimiento almacenado en MySQL usando la instrucción MySQL DROP PROCEDURE.

Esta es la sintaxis de la instrucción DROP PROCEDURE de MySQL

DROP PROCEDURE [IF EXISTS] stored_procedure_name;

En la declaración anterior, debe especificar el nombre del procedimiento almacenado.

Si intenta eliminar un procedimiento almacenado que no existe, MySQL dará un error. Entonces, opcionalmente, puede usar la palabra clave IF EXISTS para asegurarse de que el procedimiento almacenado se elimine solo si existe.

Lectura adicional:MySQL Cambiar contraseña de usuario

Digamos que tiene el siguiente procedimiento almacenado sample_procedure de la siguiente manera.

DELIMITER $$

CREATE PROCEDURE get_orders()
BEGIN
    SELECT *
    FROM orders;
END$$

Lectura adicional:MySQL Cast como booleano

Aquí está la instrucción SQL para eliminar el procedimiento almacenado en MySQL

mysql> DROP PROCEDURE get_orders();
Query OK, 0 rows affected (0.04 sec)

Si intenta descartar un procedimiento que no existe, obtendrá el siguiente error

mysql> drop procedure get_orders;
ERROR 1305 (42000): PROCEDURE sample.get_orders does not exist

Sin embargo, si descarta el procedimiento con la palabra clave IF EXISTS, solo recibirá una advertencia, no un error.

mysql> drop procedure IF EXISTS get_orders;
Query OK, 0 rows affected, 1 warning (0.00 sec)

Lectura adicional:MySQL CAST vs BOOLEAN

Cómo descartar todos los procedimientos en MySQL

MySQL le permite descartar solo un procedimiento a la vez. Entonces, si desea descartar todos los procedimientos, deberá crear declaraciones DROP PROCEDURE separadas. Aquí hay una declaración SELECT que crea una lista de declaraciones de procedimiento de eliminación. Su resultado es una lista de instrucciones DROP PROCEDURE, una para cada procedimiento almacenado en su base de datos. Sin embargo, utilícelo con precaución.

SELECT
    CONCAT('DROP ',ROUTINE_TYPE,' `',ROUTINE_SCHEMA,'`.`',ROUTINE_NAME,'`;') as stmt
FROM information_schema.ROUTINES;

Con suerte, ahora puede eliminar fácilmente el procedimiento en MySQL.

Ubiq facilita la visualización de datos en minutos y la supervisión en paneles en tiempo real. ¡Pruébalo hoy!