Nogle gange skal du muligvis vise alle lagrede procedurer i MySQL. Sådan viser du alle procedurer i MySQL ved hjælp af kommandoen SHOW PROCEDURE.
MySQL-liste over alle procedurer
Du kan nemt liste alle procedurer i MySQL ved hjælp af kommandoen SHOW PROCEDURE
Her er syntaksen for SHOW PROCEDURE-sætningen
SHOW PROCEDURE STATUS [LIKE 'pattern' | WHERE search_condition]
Ovenstående erklæring returnerer mange attributter for lagrede procedurer, såsom dens navn, database, oprettelsesdato, ændringsdato osv.
Den vil dog vise alle procedurer, som du har adgang til.
Bonus Læs:MySQL Nulstil root-adgangskode
Her er et eksempel på VIS PROCEDURE STATUS-erklæring
mysql> show procedure status; +--------+---------------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+ | Db | Name | Type | Definer | Modified | Created | Security_type | Comment | character_set_client | collation_connection | Database Collation | +--------+---------------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+ | sample | counter | PROCEDURE | root@localhost | 2020-07-20 09:14:11 | 2020-07-20 09:14:11 | DEFINER | | cp850 | cp850_general_ci | latin1_swedish_ci | | sample | fill_calendar | PROCEDURE | root@localhost | 2020-04-17 16:44:12 | 2020-04-17 16:44:12 | DEFINER | | cp850 | cp850_general_ci | latin1_swedish_ci | | sample | get_count | PROCEDURE | root@localhost | 2020-07-20 09:07:32 | 2020-07-20 09:07:32 | DEFINER | | cp850 | cp850_general_ci | latin1_swedish_ci | | sample | get_product | PROCEDURE | root@localhost | 2020-07-20 09:00:00 | 2020-07-20 09:00:00 | DEFINER | | cp850 | cp850_general_ci | latin1_swedish_ci | | sample | Get_Products | PROCEDURE | root@localhost | 2020-07-27 09:13:15 | 2020-07-27 09:13:15 | DEFINER | | cp850 | cp850_general_ci | latin1_swedish_ci | +--------+---------------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+----------------------+--------------------+
Hvis du ønsker at liste alle procedurer, der vedrører en specifik database, kan du gøre det ved at bruge WHERE-sætningen i SHOW PROCEDURE-sætningen.
SHOW PROCEDURE STATUS where search_condition
Her er SQL-forespørgslen, der viser alle procedurer i sample_db database.
mysql> show procedure status where db='sample_db';
Bonus Læs:Sådan sletter du lagret procedure i MySQL
På samme måde, hvis du vil vise alle lagrede procedurer, hvis navn indeholder et specifikt mønster, kan du bruge LIKE-sætningen, som vist,
SHOW PROCEDURE STATUS LIKE '%pattern%';
Her er SQL-forespørgslen, der viser alle lagrede procedurer, der indeholder ordet 'get'
mysql> show procedure status like '%get%';
Forhåbentlig kan du nu nemt liste alle lagrede procedurer i MySQL.
Ubiq gør det nemt at visualisere data på få minutter og overvåge i dashboards i realtid. Prøv det i dag!