ストアド プロシージャとは何ですか?
ストアド プロシージャは、複雑なプログラムをデータベースに保存し、外部プログラムから呼び出せるようにするデータベース オブジェクトです。
ストアド プロシージャは、特定の機能を実行するように設計された一連の SQL ステートメントであり、ユーザーはストアド プロシージャの名前を指定し、(必要に応じて) パラメータを指定することでそれを呼び出すことができます。
ストアド プロシージャの概念は非常にシンプルで、コードのカプセル化とデータベース SQL 言語レベルでの再利用です。
ストアド プロシージャの利点:
ストアド プロシージャは、複雑なビジネス ロジックをカプセル化して隠すことができます。
ストアド プロシージャは値を返したり、パラメータを受け取ったりすることができます。
ストアドプロシージャは、ビューテーブル、データテーブル、またはユーザー定義関数とは異なり、サブルーチンであるため、select命令を使用して実行できません。
ストアド プロシージャは、データの検証、ビジネス ロジックの適用などに使用できます。
ストアド プロシージャの欠点:
ストアド プロシージャは、サポートされているプログラミング言語が異なるため、特定のデータベースに合わせてカスタマイズされることがよくあります。他のメーカーのデータベース システムに切り替える場合は、元のストアド プロシージャを書き直す必要があります。
パフォーマンスのチューニングとストアド プロシージャの作成は、さまざまなデータベース システムによって制限されます。
ストアドプロシージャの作成と呼び出し
ストアドプロシージャは、特定の関数を完了するために使用される名前を持つコードの一部です。
ストアド プロシージャを作成し、データベースのデータ ディクショナリに保存します。
create procedure 存储过程名称(in|out|inout 参数名称 参数类型,……) begin 过程体; end
ストアドプロシージャを作成する
create procedure getStudentCount() begin select count(*) as num from student where classid=8; end
ストアドプロシージャをクエリ、変更、削除する
1. クエリ
すべてのストアドプロシージャのステータスをクエリする
show procedure status;
対応するデータベースのすべてのストアドプロシージャのステータスを表示する
show procedure status where db="数据库名";
名前に Student が含まれるストアド プロシージャのステータスを表示します
show procedure status where name like "%Student%";
ストアド プロシージャの詳細なコードをクエリします
show create procedure 过程名;
2. 削除
alter procedure 过程名([过程参数[,…]])过程体;注: 別のストアド プロシージャを削除することはできません。ストアド プロシージャ内で別のストアド プロシージャを呼び出します。
ストアド プロシージャを呼び出すには
mysql ストアド プロシージャは、呼び出し、プロセス名、および括弧内に、必要に応じてパラメータを追加します。パラメータには、呼び出す入力パラメータ、出力パラメータが含まれます。 。
りー以上が[MySql チュートリアル] ストアド プロシージャとその使用方法を簡単にガイドします。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。