摘要:在本教程中,您将学习如何列出 MySQL 服务器中数据库中的存储过程。
使用SHOW PROCEDURE STATUS
语句列出存储过程
以下是SHOW PROCEDURE STATUS
语句的基本语法:
SHOW PROCEDURE STATUS [LIKE 'pattern' | WHERE search_condition]
Code language: SQL (Structured Query Language) (sql)
SHOW PROCEDURE STATUS
语句显示存储过程的所有特征,包括存储过程名称。它返回您有权访问的存储过程。
以下语句显示当前MySQL服务器中的所有存储过程:
SHOW PROCEDURE STATUS;
Code language: SQL (Structured Query Language) (sql)
这是部分输出:
如果只想显示特定数据库中的存储过程,可以在SHOW PROCEDURE STATUS
中使用WHERE
子句,如以下语句所示:
SHOW PROCEDURE STATUS WHERE search_condition;
Code language: SQL (Structured Query Language) (sql)
例如,以下语句列出示例数据库classicmodels
中的所有存储过程:
SHOW PROCEDURE STATUS WHERE db = 'classicmodels';
Code language: SQL (Structured Query Language) (sql)
如果您想查找名称包含特定单词的存储过程,可以使用LIKE
子句,如下所示:
SHOW PROCEDURE STATUS LIKE '%pattern%'
Code language: SQL (Structured Query Language) (sql)
以下语句显示名称包含单词Order
的所有存储过程:
SHOW PROCEDURE STATUS LIKE '%Order%'
Code language: SQL (Structured Query Language) (sql)
使用数据字典列出存储过程
information_schema
数据库中的routines
表包含了当前MySQL服务器中所有数据库的存储过程和存储函数的所有信息。
要显示特定数据库的所有存储过程,请使用以下查询:
SELECT
routine_name
FROM
information_schema.routines
WHERE
routine_type = 'PROCEDURE'
AND routine_schema = '<database_name>';
Code language: SQL (Structured Query Language) (sql)
例如,以下语句列出classicmodels
数据库中的所有存储过程:
SELECT
routine_name
FROM
information_schema.routines
WHERE
routine_type = 'PROCEDURE'
AND routine_schema = 'classicmodels';
Code language: SQL (Structured Query Language) (sql)
使用 MySQL Workbench 显示存储过程
在 MySQL Workbench 中,您可以查看数据库中的所有存储过程。
步骤1.访问要查看存储过程的数据库。
步骤 2. 打开存储过程菜单。您将看到属于当前数据库的存储过程的列表。
在本教程中,您学习了如何通过从数据字典中查询数据库中的存储过程来列出它们。
本教程有帮助吗?