MySQL は、広く使用されているリレーショナル データベース管理システムです。ストアド プロシージャは、MySQL で実行できるプリコンパイルされた SQL ステートメントのコレクションです。ストアド プロシージャ ステートメントは、ストアド プロシージャを作成および定義するために使用されるステートメントです。
MySQL ストアド プロシージャ ステートメントは、データベース サーバーの負荷を大幅に軽減し、アプリケーションの効率を向上させることができます。これにより、開発者は一般的に使用されるいくつかのコマンドとタスクを 1 つのオブジェクトにカプセル化し、必要なときに簡単に呼び出すことができます。
MySQL ストアド プロシージャ ステートメントを詳しく見てみましょう。
ストアド プロシージャを作成するには、CREATE PROCEDURE
コマンドを使用する必要があります。このコマンドには、ストアド プロシージャの名前、入力パラメータ、出力パラメータ、およびプロシージャ本体が含まれます。構文は次のとおりです。
CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type, [IN | OUT | INOUT] parameter_name data_type, ...) BEGIN -- 过程体 END;
ここで、procedure_name
はストアド プロシージャを識別するために使用されるカスタム名、parameter_name
は入力、出力、または input/ の名前です。出力パラメータ、data_type
はパラメータのデータ型です。これらのパラメーターのプレフィックスを使用して、パラメーターが入力パラメーター、出力パラメーター、または入出力パラメーターであるかどうかを指定できます。
これは簡単な例です:
CREATE PROCEDURE HelloWorld (IN `name` VARCHAR(20)) BEGIN SELECT CONCAT('Hello, ', `name`); END;
ストアド プロシージャを作成したら、CALL
コマンドを使用してストアド プロシージャを呼び出すことができます。それ。基本的な構文は次のとおりです。
CALL procedure_name([parameter_value, parameter_value, ...]);
ここで、procedure_name
は呼び出されるストアド プロシージャの名前であり、parameter_value
はストアド プロシージャに渡されるパラメータです。手順。ストアド プロシージャに出力パラメーターがある場合は、SELECT
ステートメントを使用して結果を返すことができます。
次は簡単な例です:
CALL HelloWorld('Alice');
ストアド プロシージャの本体またはパラメータを更新する必要がある場合は、ALTER PROCEDURE
コマンド。基本的な構文は次のとおりです:
ALTER PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type, [IN | OUT | INOUT] parameter_name data_type, ...) BEGIN -- 过程体 END;
この構文は、CREATE PROCEDURE
コマンドとよく似ています。唯一の違いは、# を使用するときにストアド プロシージャ名を指定する必要がないことです。 ##ALTER PROCEDURE コマンド。
ALTER PROCEDURE HelloWorld (IN `new_name` VARCHAR(20)) BEGIN SELECT CONCAT('Hello, ', `new_name`); END;
DROP PROCEDURE を使用できます。それを削除するコマンド。基本的な構文は次のとおりです。
DROP PROCEDURE procedure_name;
procedure_name は、削除するストアド プロシージャの名前です。
DROP PROCEDURE HelloWorld;
以上がmysqlストアドプロシージャステートメントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。