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


当前回答

我最喜欢呈现的程序列表的当前数据库:名称,参数列表,注释

SELECT specific_name AS name, param_list AS params, `comment`
FROM mysql.proc
WHERE db = DATABASE()
AND type = 'PROCEDURE';

为函数添加返回值:

SELECT specific_name AS name, param_list AS params, `returns`, `comment`
FROM mysql.proc
WHERE db = DATABASE()
AND type = 'FUNCTION';

其他回答

show procedure status

将显示存储过程。

show create procedure MY_PROC

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

help show

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

对所有过程使用以下查询:

select * from sysobjects 
where type='p'
order by crdate desc
SHOW PROCEDURE STATUS;
SHOW FUNCTION STATUS;

用于视图过程的名称

select name from mysql.proc 

下面的代码用于列出所有过程,下面的代码给出与显示过程状态相同的结果

select * from mysql.proc 

如上所述,

show procedure status;

确实会显示过程列表,但会显示服务器范围内的所有过程。

如果你想只看到一个数据库中的那些,试试这个:

SHOW PROCEDURE STATUS WHERE Db = 'databasename';