# 列出存储过程

在本教程中，我们将向您展示如何列出MySQL数据库中的所有存储过程，并显示存储过程源代码的一些非常有用的语句。

MySQL为提供了一些有用的语句，可以更有效地管理存储过程。这些语句包括列出存储过程并显示存储过程的源代码。

## 显示存储过程字符

要显示存储过程的字符，请使用`SHOW PROCEDURE STATUS`语句如下：

```sql
SHOW PROCEDURE STATUS [LIKE 'pattern' | WHERE expr];
```

`SHOW PROCEDURE STATUS`语句是对SQL标准的MySQL扩展。此语句提供存储过程的字符，包括数据库，存储过程名称，类型，创建者等。

可以使用[LIKE](http://www.yiibai.com/mysql/sql-like-mysql.html)或[WHERE](http://www.yiibai.com/mysql/where.html)子句根据各种标准过滤出存储过程。

要列出您有权访问的数据库的所有存储过程，请使用`SHOW PROCEDURE STATUS`语句，如下所示：

```sql
SHOW PROCEDURE STATUS;
```

如果要在特定数据库中显示存储过程，可以在`SHOW PROCEDURE STATUS`语句中使用`WHERE`子句：

```sql
SHOW PROCEDURE STATUS WHERE db = 'yiibaidb';
```

如果要显示具有特定模式的存储过程，例如，名称包含`product`字符，则可以使用`LIKE`操作符，如以下命令：

```sql
SHOW PROCEDURE STATUS WHERE name LIKE '%product%'
```

## 显示存储过程的源代码

要显示特定存储过程的源代码，请使用`SHOW CREATE PROCEDURE`语句如下：

```sql
SHOW CREATE PROCEDURE stored_procedure_name
```

在`SHOW CREATE PROCEDURE`关键字之后指定存储过程的名称。例如，要显示`GetAllProducts`存储过程的代码，请使用以下语句：

```sql
SHOW CREATE PROCEDURE GetAllProducts;
```

在本教程中，您已经学习了一些有用的语句，包括`SHOW PROCEDURE STATUS`和`SHOW CREATE PROCEDURE`语句，用于列出数据库中的存储过程并获取存储过程的源代码。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hezhiqiang-book.gitbook.io/mysql/di-san-zhang/lie-chu-cun-chu-guo-cheng.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
