1. 概要
MySQL ストアド プロシージャは、MySQL データベースの非常に重要な機能であり、頻繁に実行する必要があるいくつかの SQL ステートメントを 1 つのユニットにカプセル化し、管理と使用を容易にします。この記事では、MySQL ストアド プロシージャをクエリする方法を紹介します。
2. ストアド プロシージャをクエリするための基本構文
MySQL ストアド プロシージャをクエリするための基本構文は次のとおりです:
SHOW PROCEDURE STATUS [LIKE 'pattern'];
pattern
は一致するパターンです。プロシージャ名 の場合、ワイルドカード文字 %
および __
を使用できます。
3. ストアド プロシージャをクエリするためのパラメータの詳細な説明
上記の構文を使用してストアド プロシージャをクエリすると、次の列を含む結果を取得できます:
列名 | 説明 |
---|---|
Db | ストアド プロシージャが存在するデータベースの名前位置 |
Name | ストアド プロシージャの名前 |
Type | ストアド プロシージャに入力パラメータまたは出力パラメータの場合は PROCEDURE、それ以外の場合は FUNCTION |
ストアド プロシージャの定義者 | |
最後に変更されたストアド プロシージャ Time | |
ストアド プロシージャが作成された時刻 | |
ストアド プロシージャのセキュリティ タイプ: DEFINER または INVOKER | |
ストアド プロシージャのコメント |
get_total
という名前のストアド プロシージャがあり、コードは次のとおりであるとします。次のステートメントを使用してストアド プロシージャの情報をクエリできます:CREATE PROCEDURE `get_total`(IN `p_price` INT, OUT `p_total` DECIMAL(10,2)) BEGIN SELECT SUM(price) INTO p_total FROM orders WHERE price>p_price; END;
クエリ結果は次のとおりです:
SHOW PROCEDURE STATUS WHERE Name='get_total';この結果を通じて、ストアド プロシージャの関連情報を取得できます
get_total
(データベースtest_db
を含む)、プロセス タイプは PROCEDURE です。定義者はroot@%、最終変更時刻は
2019-01- 01 00:00:00、作成時刻は
2018-01-01 00:00:00 、セキュリティ タイプは DEFINER、アノテーションは
a test です。
5. 概要
上記の例から、MySQL ストアド プロシージャのクエリは非常に簡単で、必要なのは SHOW PROCEDURE STATUS ステートメントを使用するだけであることがわかります。クエリを通じてストアド プロシージャの関連情報を取得できるため、ストアド プロシージャの管理と使用が容易になります。実際のアプリケーションでは、ストアド プロシージャは MySQL データベースの不可欠かつ重要な機能の 1 つであり、これによりデータベース操作の効率とセキュリティが大幅に向上し、開発者はビジネス ロジックの実装にさらに集中できるようになります。
以上がmysqlストアドプロシージャのクエリの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。