Oracle データベースでの SQLEXECUTE 操作
Microsoft BizTalk Adapter for Oracle Database は、Oracle データベース成果物に対する標準的な一連の操作を表示します。 これらの操作を使用すると、Oracle 関数やプロシージャを呼び出したり、テーブルに対して基本的な SQL データ操作言語 (DML) 操作を実行したりできます。 ただし、Oracle Database アダプターが表示されない操作を実行する必要がある、ビジネス ロジックに基づくシナリオが存在する場合があります。 たとえば、次のような場合があります。
Oracle Database アダプターによって表示されないデータベース成果物に対して操作を実行します。たとえば、Oracle シーケンスのカーバルまたは NEXTVAL を取得します。
データ定義言語操作を実行する。たとえば、テーブルを作成します。
デザイン時に存在しなかったデータベース成果物に対して操作を実行します。たとえば、ビジネス ロジックによって作成された一時テーブル内のレコードを更新します。
Oracle Database アダプターが実行する操作よりも、テーブルに対してより複雑な DML 操作を実行します。たとえば、JOIN 句を含むクエリを実行する場合です。
このようなシナリオでは、Oracle Database アダプターによって SQLEXECUTE 操作が表示されます。 SQLEXECUTE 操作は、[アダプター サービス参照の追加] Visual Studio プラグインおよびアダプター サービス BizTalk プロジェクト アドインの [ カテゴリの選択 ] ウィンドウのルート ノード (/) の下に表示されます。
SQLEXECUTE 操作を使用すると、Oracle データベースに対してパラメーター化された SQL ステートメントを実行できます。 SQLEXECUTE 操作では、各セットに対して同じ SQL ステートメントを 1 回実行できるパラメーター セットで構成される入力パラメーター ブロックがサポートされています。 SQLEXECUTE 操作は、汎用レコード セット内の SQL ステートメントの結果を返します。
Note
IN および IN OUT パラメーターは、SQLEXECUTE 操作のプロシージャ、関数、およびパッケージに渡すことができます。 呼び出された成果物は、Oracle データベースで指定されたパラメーターを使用して実行されます。ただし、SQLEXECUTE 操作では、OUT パラメーターと IN OUT パラメーターの値はクライアントに返されません。 プロシージャ、関数、またはパッケージを呼び出す場合は、Oracle Database アダプターがこれらの Oracle 成果物に対して公開する専用の操作を呼び出して呼び出すことをお勧めします。
詳細情報は、次のとおりです。
BizTalk Serverを使用して SQLEXECUTE 操作を実行する方法については、「BizTalk Serverを使用した SQLEXECUTE 操作の実行」を参照してください。
WCF サービス モデルを使用して SQLEXECUTE 操作を実行する方法については、「WCF サービス モデルを 使用した SQLEXECUTE 操作の実行」を参照してください。
WCF チャネル モデルを使用して SQLEXECUTE 操作を実行する方法については、「WCF チャネル モデルを 使用した SQLEXECUTE 操作の実行」を参照してください。
SQLEXECUTE 操作を実行するためのメッセージ構造と SOAP アクションについては、「 SQLEXECUTE 操作のメッセージ スキーマ」を参照してください。