Oracle では、関数とストアド プロシージャがよく使用されます。これらの構文には多くの類似点がありますが、違いもあります。この記事では、Oracle のストアド ファンクションとストアド プロシージャの違いについて説明します。とても参考になります。困っている友達が参考になれば幸いです、皆さんのお役に立てれば幸いです。
この期間中に関数とストアド プロシージャの学習を終えたところです。要約してみましょう:
1: ストアド プロシージャ: 簡単に言うと、それらは pl/sql ブロックと呼ばれます。
入力パラメータ (デフォルト) in
output パラメータ out
out の入力および出力パラメータ
関数定義
文法構造:
create or replace 存储过程名(参数列表) is --定义变量 begin --pl/sql end;
ケース:
ストアド プロシージャとストアド関数の相違点と関連性:
同じ点: 1 . 作成の構文構造は似ており、どちらも複数の受信パラメータと送信パラメータを運ぶことができます
2。違い: 1. キーワード プロシージャはストアド プロシージャ定義と関数定義関数に使用されます
2. ストアド プロシージャで値を返すために return を使用することはできませんが、関数では return が必要です。関数内の return;
3. ストアド プロシージャを実行する方法は 2 つあります (1. 実行を使用します。2. プロシージャを保存する 2 つの方法に加えて、begin 関数と end 関数を使用することもできます)。 select (select f1() from Dual;) などの式としても使用できます。 概要: 戻り値が 1 つだけの場合はストアド関数を使用し、それ以外の場合は通常ストアド プロシージャを使用します。
関連する推奨事項:
Oracleでデコード関数を使用する方法
Oracleがテーブルスペースのデータファイルの場所を変更する方法
Oracleの共通関数Truncの詳細な説明
以上がOracleのストアドファンクションとストアドプロシージャの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。