引数 : 所属コード 戻り値 : 引数で指定された所属部署に属する社員の数 ※ count(*) を使用しているので、select into 用の EXCEPTION は必要無い。 ※ 例外エラーの行が必要な場合は、1=1 を 1=0 にしてリビルドする ※ count(*) の結果は整数ですが、VARCHAR2 で代用できる
↓利用方法のサンプル select 社員マスタ.*,test(所属) from 社員マスタ
CREATE or REPLACE FUNCTION TEST ( PM_STRING IN VARCHAR2 /* 引数の定義 */ ) RETURN VARCHAR2 /* 戻り値の定義 */ /**********************************************************/ /* 変数の定義 */ /**********************************************************/ AS RET_VALUE VARCHAR2(2000); WK_VALUE VARCHAR2(2000); /**********************************************************/ /* 処理開始 */ /**********************************************************/ BEGIN DBMS_OUTPUT.PUT_LINE('デバッグ:開始'); SELECT count(*) INTO RET_VALUE FROM 社員マスタ WHERE 所属 = PM_STRING; RETURN RET_VALUE; /**********************************************************/ /* 一番外側のブロックの例外処理 */ /**********************************************************/ $if 1=1 $then EXCEPTION WHEN OTHERS THEN RET_VALUE := '例外発生:'||SQLCODE||':'||SQLERRM; RETURN RET_VALUE; $end END;
|
【Oracle : PL/SQLの最新記事】
- PL/SQL : 最も簡単な CSV 出力 の記述
- PL/SQL : Function と Procedure の簡単なサンプル
- Oracle : PL/SQL Function の使用方法
- Oracle : PL/SQL : 暗黙のカーソルとループブロックを使用した自動行挿入
- Oracle : PL/SQL : SELECT 〜 INTO 構文の一般的な使用方法
- Oracle : PL/SQL : カーソルを使った一般的なループ処理を行うプロシージャ
- Oracle : PL/SQL : Function のサンプルと使い方
- PL/SQL : OUT タイプのパラメータを持つストアードプロシージャの処理
- PL/SQL : プロシージャの呼び出し