Mysql
 sql >> Database >  >> RDS >> Mysql

Come eliminare la stored procedure in MySQL

A volte potrebbe essere necessario eliminare la procedura in MySQL o eliminare la procedura in MySQL poiché non ne hai più bisogno. Ecco come eliminare la stored procedure in MySQL utilizzando l'istruzione MySQL DROP PROCEDURE. Puoi usarlo per eliminare tutte le procedure in MySQL o eliminare una procedura in MySQL.

Come eliminare la stored procedure in MySQL

Di seguito sono riportati i passaggi per eliminare la stored procedure in MySQL utilizzando l'istruzione MySQL DROP PROCEDURE.

Ecco la sintassi dell'istruzione MySQL DROP PROCEDURE

DROP PROCEDURE [IF EXISTS] stored_procedure_name;

Nell'istruzione precedente, è necessario specificare il nome della procedura memorizzata.

Se si tenta di eliminare una procedura memorizzata che non esiste, MySQL visualizzerà un errore. Quindi puoi facoltativamente utilizzare la parola chiave IF EXISTS per assicurarti che la stored procedure venga eliminata solo se esiste.

Bonus Lettura:MySQL Cambia password utente

Supponiamo che tu abbia la seguente procedura memorizzata procedura_campione come segue.

DELIMITER $$

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

Bonus Lettura:MySQL Cast come Booleano

Ecco l'istruzione SQL per eliminare la stored procedure in MySQL

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

Se provi a eliminare una procedura che non esiste, riceverai il seguente errore

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

Tuttavia, se elimini la procedura utilizzando la parola chiave IF EXISTS, riceverai solo un avviso, non un errore.

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

Bonus da leggere:MySQL CAST vs BOOLEAN

Come eliminare tutte le procedure in MySQL

MySQL ti consente di eliminare solo una procedura alla volta. Quindi, se vuoi eliminare tutte le procedure, dovrai creare istruzioni DROP PROCEDURE separate. Ecco un'istruzione SELECT che crea un elenco di istruzioni della procedura di rilascio. Il risultato è un elenco di istruzioni DROP PROCEDURE, una per ciascuna procedura memorizzata nel database. Tuttavia, usalo con cautela.

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

Si spera che ora sia possibile eliminare facilmente la procedura in MySQL.

Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!