特殊な LOB 操作メッセージ スキーマ
READLOB 操作と UpdateLOB 操作は、LOB 列を含むテーブルとビューに対して表示されます。Oracle ラージ オブジェクト (LOB) データを格納するために使用される列です。 これらの操作を使用すると、base64Binary でエンコードされたデータのストリームとして LOB データの読み取りまたは書き込みを行うことができます。 これらは、1 つの行の LOB データの単一列に対して動作します。
ReadLOB 操作と UpdateLOB 操作の概要、およびサポートされている Oracle LOB データ型の概要については、「 Oracle Database の LOB データを含むテーブルとビューに対する操作」を参照してください。
LOB Data-Type 操作のメッセージ構造
次の表は、ReadLOB 操作と UpdateLOB 操作の要求メッセージと応答メッセージの構造を示しています。 操作のターゲット テーブルはメッセージ アクションで指定され、ターゲット名前空間にも表示されます。
操作 | XML メッセージ | 説明 |
---|---|---|
ReadLOB | <ReadLOB xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]"> <LOB_COLUMN>[COL_NAME]</LOB_COLUMN> <FILTER>[WHERE_clause]</LOB_COLUMN> </ReadLOB> |
内の LOB データ - LOB_COLUMN要素によって識別される列と、 - FILTER 要素で指定された where 句に一致する行 返されます。 where 句は、1 つの行にのみ一致する必要があります。 一致する行が複数ある場合は、最初に一致する行の LOB データが返されます。 大事な ReadLOB 操作は、WCF サービス モデルでの LOB データの入力ストリーミングをサポートするように設計されています。 テーブル Select 操作を使用して、WCF チャネル モデルまたはBizTalk Server ソリューションから LOB データを読み取る必要があります。 |
ReadLOB 応答 | <ReadLOBResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]"> <ReadLOBResult> [LOB_DATA] </ReadLOBResult> </ReadLOBResponse> |
LOB データは、base64Binary でエンコードされたデータのストリームとして返されます。 大事な アダプターによって返される WSDL が、アダプターが ReadLOB 応答メッセージに使用する実際のスキーマと一致しません。 |
UpdateLOB | <UpdateLOB xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]"> <LOB_COLUMN>[COL_NAME]</LOB_COLUMN> <FILTER>[WHERE_clause]</LOB_COLUMN> <Stream>[LOB_DATA]</Stream> </UpdateLOB> |
内の LOB データ - LOB_COLUMN要素によって識別される列と、 - FILTER 要素で指定された where 句に一致する行 は、ストリーム内の base64Binary でエンコードされたデータで更新されます。 where 句は、1 つの行にのみ一致する必要があります。 一致する行が複数ある場合は、例外がスローされます。 メモ UpdateLOB 操作は、指定した列と行のすべてのデータを置き換えます。 |
UpdateLOB 応答 | <UpdateLOBResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]"> </UpdateLOBResponse> |
空の応答が返されます。 |
[VERSION] = メッセージのバージョン文字列。たとえば、"http://Microsoft.LobServices/OracleDB/2007/03
" です。
[SCHEMA] = Oracle 成果物のコレクション。たとえば、SCOTT です。
[TABLE_NAME] = ターゲット LOB 列を含むテーブル。たとえば、EMP などです。
[COL_NAME] = ターゲット LOB 列の名前。たとえば、LOB_FIELD。
[WHERE_clause] = 1 つの行に一致する Oracle データベース SELECT ステートメント WHERE 句。たとえば、ID = 1 です。
[LOB_DATA] = base64Binary 型の LOB 列データ。
重要
ビューに対する ReadLOB および UpdateLOB 操作のメッセージ構造は、テーブルの場合と同じですが、操作の名前空間でテーブルではなくビューが指定されている点が異なります。 <ReadLOB xmlns ="[VERSION]/[SCHEMA]/``View``/[VIEW_NAME]">
LOB Data-Type 操作のメッセージ アクション
次の表は、Oracle Database アダプターがテーブルに対する ReadLOB および UpdateLOB 操作に使用するメッセージ アクションを示しています。 Oracle Database アダプターは、メッセージ アクションで指定されたテーブル名を使用して、操作のターゲット テーブルを決定します。
Operation | アクション | 例 |
---|---|---|
ReadLOB | [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/ReadLOB |
http:/Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/CUSTOMER/ReadLOB |
ReadLOB 応答 | [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/ReadLOB/response |
http:/Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/CUSTOMER/ReadLOB/response |
UpdateLOB | [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/UpdateLOB |
http:/Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/CUSTOMER/UpdateLOB |
UpdateLOB 応答 | [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/UpdateLOB/response |
http:/Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/CUSTOMER/UpdateLOB/response |
[VERSION] = メッセージのバージョン文字列 ("" などhttp://Microsoft.LobServices.OracleDB/2007/03
)。
[SCHEMA] = Oracle 成果物のコレクション (SCOTT など)。
[TABLE_NAME] = ターゲット LOB 列を含むテーブル。たとえば、CUSTOMER です。 (SCOTT.CUSTOMER テーブルは、サンプルに含まれている SQL スクリプトによってインストールされます)。
重要
ビューに対する ReadLOB 操作と UpdateLOB 操作のメッセージ アクションは、テーブルに対して使用されるアクションと似ていますが、操作のアクションでは、テーブルではなくビューが指定されている点が異なります。 [VERSION]/[SCHEMA]/View/[VIEW_NAME]/ReadLOB