MySQL のストアド プロシージャは、データベースに保存された SQL ステートメントのコレクションを指します。ストアド プロシージャが作成され、必要なパラメータが実行時に提供されると、ストアド プロシージャは次のような方法で使用できます。パラメータの実行と戻り値
は、MySQL でストアド プロシージャを作成する機能を提供します。ストアド プロシージャは、MySQL やその他のデータベース管理システムの強力な機能です。次に、この記事では、MySQL のストアド プロシージャについて詳しく紹介しますので、参考にしていただければ幸いです。
[推奨コース: MySQL チュートリアル ]
ストアド プロシージャ:
ストアド プロシージャは、データベースに保存されている SQL ステートメントのコレクションを指します。ストアド プロシージャにはビジネス ロジックを含めることができます。これは、ストアド プロシージャとビューを区別するための鍵の 1 つです。さらに、ストアド プロシージャはパラメータも受け入れることができ、ストアド プロシージャ内で変数を設定したり、ステートメントを記述したりすることができます。
ストアド プロシージャの仕組み
まずストアド プロシージャを作成し、それを実行します。プロセスの実行時に必要なパラメーターを指定する必要があります。その後、コードで指定された方法でパラメーターを使用してストアド プロシージャが実行されます。たとえば、FruitId パラメーターを受け入れるストアド プロシージャを作成します。ストアド プロシージャはそのパラメータを取得し、それを使用してその特定の果物の在庫を確認できます。したがって、ストアド プロシージャを呼び出すことができます。つまり、別の果物 ID を使用するたびに、値を返し、その在庫に果物がいくつあるかを表示します。
ストアド プロシージャの作成
CREATE PROCEDURE ステートメントを通じてストアド プロシージャを作成できます
CREATE PROCEDURE demo_name(p_1 INT) BEGIN ...code goes here... END;
demo_name はストアド プロシージャの名前を指します。および括弧は必須です。パラメーターが含まれていない場合、括弧は空でも構いません。
ストアド プロシージャの本体は、BEGIN キーワードと END キーワードの間にあります。これらのキーワードは、複合ステートメントを記述するために使用されます。複合ステートメントには複数のステートメントを含めることができ、必要に応じてそれらをネストできます。
例: FruitStock という名前のストアド プロシージャを作成します:
DELIMITER // CREATE PROCEDURE FruitStock(thisFruit SMALLINT) BEGIN SELECT Fruit.FruitName, Fruit.Inventory, Units.UnitName FROM Fruit INNER JOIN Units ON Fruit.UnitId = Units.UnitId WHERE Fruit.FruitId = thisFruit; END // DELIMITER ;
ストアド プロシージャを作成した後、次にこのストアド プロシージャが呼び出されます。
パラメータ 1 を指定して ID を呼び出します。
CALL FruitStock(1);
ストアド プロシージャの削除
DROP PROCEDURE ステートメントを使用してストアド プロシージャを削除できます。
DROP PROCEDURE FruitStock;
ストアド プロシージャの変更
ストアド プロシージャでは、次のステートメントを使用してストアド プロシージャ ALTER PROCEDURE を変更できます。
ストアド プロシージャの本体またはそのパラメータを変更する場合は、プロシージャを削除して再度作成する必要があることに注意してください。
例: リストを次の場所に追加します。 Fruit.FruitId
DROP PROCEDURE IF EXISTS FruitStock; DELIMITER // CREATE PROCEDURE FruitStock(thisFruit SMALLINT) BEGIN SELECT Fruit.FruitId, Fruit.FruitName, Fruit.Inventory, Units.UnitName FROM Fruit INNER JOIN Units ON Fruit.UnitId = Units.UnitId WHERE Fruit.FruitId = thisFruit; END // DELIMITER ;
によって返されます。 概要: 上記がこの記事の全内容です。皆様のお役に立てれば幸いです。
以上がmysqlストアドプロシージャとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。