Oracle では、ストアド プロシージャは、特定の機能を完了するための一連の SQL ステートメントです。これはコンパイルされ、データベースに保存されます。ユーザーは、ストアド プロシージャ名とパラメータ (構文形式) を指定して実行します。は「プロシージャのストアド プロシージャ名を作成または置換します」です。
このチュートリアルの動作環境: Windows 7 システム、Oracle バージョン 11.2.0.1.0、DELL G3 コンピューター。
Oracle ストアド プロシージャは、処理宣言、実行処理部分、ストアド プロシージャ例外の 3 つの部分で構成されます (記述してもしなくても構いません。スクリプトのフォールト トレランスとデバッグの利便性を高めるために、例外処理を記述します)
ストアド プロシージャは、主に複雑な関数を完成させるために使用されます。SQL ステートメントを直接使用する場合は、毎回コンパイルする必要があります。ただし、ストアド プロシージャは 1 回コンパイルするだけで済み、後で直接呼び出すことができます。その構文は次のとおりです。
create or replace procedure procedure_name as begin extention; end; /
行 1:
CREATE OR REPLACE PROCEDURE は、スケルトンと呼ばれるストアド プロシージャを作成し、存在する場合は上書きするように Oracle データベースに通知する SQL ステートメントです。
行 2: IS キーワードは、PL/SQL 本体が後に続くことを示します。 行 3: BEGIN キーワードは、PL/SQL 本体の始まりを示します。 行 4: NULL PL/SQL 文は、何も実行しないことを示します。PL/SQL 本体には少なくとも 1 つの文が必要であるため、この文は削除できません。 行 5: END キーワードは、PL/SQL 本体の終わりを示します。ストアド プロシージャ作成構文:create or replace procedure 存储过程名(param1 in type,param2 out type) as 变量1 类型(值范围); --vs_msg VARCHAR2(4000); 变量2 类型(值范围); Begin Select count(*) into 变量1 from 表A where列名=param1; If (判断条件) then Select 列名 into 变量2 from 表A where列名=param1; Dbms_output。Put_line(‘打印信息’); Elsif (判断条件) then Dbms_output。Put_line(‘打印信息’); Else Raise 异常名(NO_DATA_FOUND); End if; Exception When others then Rollback; End;
以上がOracleストアドプロシージャとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。