MySQL でストアド プロシージャを作成して使用する方法

PHPz
リリース: 2023-04-19 17:23:53
オリジナル
3186 人が閲覧しました

MySQL は広く使用されているリレーショナル データベース管理システムであり、ストアド プロシージャは、一連の特定のタスクを完了するために使用できる特別なプログラミング構造です。この記事では、MySQL ストアド プロシージャの基本概念を紹介し、MySQL でストアド プロシージャを作成および使用する方法を簡単な例とともに示します。

1. MySQL ストアド プロシージャとは何ですか?

ストアド プロシージャは、コンパイル済みの SQL コード ブロックであり、一連の SQL ステートメント、フロー制御ステートメント、変数定義ステートメントが含まれており、別の名前で呼び出して実行できます。ストアド プロシージャは MySQL で作成してデータベース サーバーに保存し、使用する必要があるときに簡単に呼び出すことができます。ストアドプロシージャを利用するメリットは、一連の操作や計算ロジックをひとまとめにできるため、保守や管理が容易になることです。

2. MySQL ストアド プロシージャの基本構文

MySQL でストアド プロシージャを作成するための基本的な構文は次のとおりです:

DELIMITER $$

CREATE PROCEDURE procedure_name(IN parameter_name DATATYPE, OUT parameter_name DATATYPE, INOUT parameter_name DATATYPE)

BEGIN

    -- SQL逻辑代码块

END $$
ログイン後にコピー

その中で、CREATE PROCEDURE はキーワードです。ストアド プロシージャの作成。procedure_name はカスタム ストアド プロシージャ名、IN、OUT、INOUT はパラメータを渡す 3 つの方法、parameter_name はストアド プロシージャのパラメータ名、DATATYPE はパラメータのデータ型です。 SQL ロジック コード ブロックでは、SQL ステートメント、フロー制御ステートメント、および変数定義ステートメントを通じてストアド プロシージャの機能を実現できます。

3. MySQL ストアド プロシージャの例

以下では、簡単な例を使用して MySQL ストアド プロシージャの使用方法を示します。

例: 2 つの数値を加算した結果を計算する

2 つの数値を加算した結果を計算し、呼び出し元に結果を返すストアド プロシージャが必要だとします。

  1. DELIMITER ステートメントを使用してターミネータを再定義します。これは、MySQL がデフォルトでセミコロン ";" をターミネータとして使用し、セミコロンも使用する必要があるためです。ストアド プロシージャのターミネータとして使用されます。ステートメントのターミネータなので、再定義する必要があります。
DELIMITER $$
ログイン後にコピー
  1. 「add_two_numbers」という名前のストアド プロシージャを作成し、2 つの IN 型パラメータ a と b を定義します。
CREATE PROCEDURE add_two_numbers(IN a INT, IN b INT)
ログイン後にコピー
  1. BEGIN と END の間に SQL ロジック コード ブロックを記述して、2 つの数値を加算した結果を計算し、その結果を "result" という名前の変数に格納します。
BEGIN
    DECLARE result INT;

    SET result = a + b;

    SELECT result;
END $$
ログイン後にコピー
  1. SELECT ステートメントを使用してストアド プロシージャを呼び出し、パラメータ a と b の値を渡します。
SELECT add_two_numbers(3, 5);
ログイン後にコピー
  1. 上記のコードを実行すると、出力結果は 8 になります。

完全なサンプル コードは次のとおりです:

DELIMITER $$

CREATE PROCEDURE add_two_numbers(IN a INT, IN b INT)
BEGIN
    DECLARE result INT;

    SET result = a + b;

    SELECT result;
END $$

SELECT add_two_numbers(3, 5);
ログイン後にコピー

4. 概要

MySQL ストアド プロシージャは、SQL プログラミングの効率を向上させ、データベースのメンテナンス作業を管理するのに役立つ方法です。 。 テクノロジー。この記事では、MySQL でストアド プロシージャを作成および使用する方法を、簡単な例を通じて紹介します。複雑な SQL ロジック コード ブロックを記述する必要がある場合は、ストアド プロシージャの使用を検討して、より効率的で便利なデータベース管理を実現できます。

以上がMySQL でストアド プロシージャを作成して使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート