如何在mysql命令行中看到存储过程或存储函数的列表,如show tables;或显示数据库;命令。


当前回答

SHOW PROCEDURE STATUS;
SHOW FUNCTION STATUS;

其他回答

更具体的说法:

SHOW PROCEDURE STATUS 
WHERE Db = DATABASE() AND Type = 'PROCEDURE'

从MySQL 8.0开始,MySQL。Procs表已被删除。从这里的答案中运行任何使用这个表的命令都会产生一个错误,它说(相当有逻辑):

Table 'mysql.proc' doesn't exist

相反,要检索只有过程/函数名的列表,请使用:

SELECT specific_name FROM `information_schema`.`ROUTINES` WHERE routine_schema='<your_db_name>';

在我的例子中,我编辑了它,只显示过程而不显示函数:

SELECT specific_name FROM `information_schema`.`ROUTINES` WHERE routine_schema='<your_db_name>' AND routine_type='PROCEDURE';
SHOW PROCEDURE STATUS;
SHOW FUNCTION STATUS;
show procedure status

将显示存储过程。

show create procedure MY_PROC

将向你展示一个过程的定义。和

help show

将显示show命令的所有可用选项。

                           show procedure status;

使用此命令可以查看数据库中的所有过程