外部プロシージャの構築について
Windowsで外部プロシージャを作成および使用する方法について説明します。
次のファイルは、ORACLE_HOME
\rdbms\extproc
にあります。
-
extern.c
は、「外部プロシージャの作成」に示すコードの例です。
make.bat
は、Dynamic Link Libraryを構築するバッチ・ファイルです。 -
extern.sql
は、「外部プロシージャの登録」および「外部プロシージャの実行」で説明する手順を自動化します。
- 外部プロシージャの概要
外部プロシージャは、第3世代言語(Cなど)で記述されたファンクションで、PL/SQLルーチンまたはファンクションと同様に、PL/SQLまたはSQL内からコールできます。 - Oracle DatabaseおよびOracle Net Servicesのインストールと構成
Oracle DatabaseとOracle Netのインストールおよび構成について説明します。 - 外部プロシージャの作成
第3世代プログラミング言語を使用して、作成したファンクションをDLLに組み込み、EXTPROC
によって起動できます。 - DLLのビルド
第3世代プログラミング言語で外部プロシージャを記述したら、該当するコンパイラとリンカーを使用してDLLをビルドして、前述したように外部プロシージャをエクスポートするようにしてください。 - 外部プロシージャの登録
外部プロシージャを含むDLLをビルドした後は、外部プロシージャをOracle Databaseに登録する必要があります。 - ライブラリ関連の権限を信頼できるユーザーのみに制限する
CREATE LIBRARY
、CREATE ANY LIBRARY
、ALTER ANY LIBRARY
およびEXECUTE ANY LIBRARY
権限と、EXECUTE ON
library_name
の付与によって、ユーザーに大きな力が与えられます。 - 外部プロシージャの実行
外部プロシージャを実行するには、外部プロシージャを登録したPL/SQLプログラム・ユニット(外部ファンクションの別名)をコールする必要があります。
親トピック: Windows用アプリケーションの開発