ヘッダーをスキップ
Oracle® Objects for OLE開発者ガイド
11gリリース2 (11.2) for Microsoft Windows
B58887-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

AddTableメソッド

説明

OraParametersコレクションに配列パラメータを追加します。

使用方法

oraparamarray.AddTable  Name, IOType, ServerType, ArraySize , ElementSize, ObjectName

引数

このメソッドの引数は、次のとおりです。

引数 説明
Name パラメータ・コレクションに追加するパラメータの名前。この名前は、パラメータを識別するため、および関連するSQL文とPL/SQL文内のプレースホルダとして使用されます。
IOType SQL文とPL/SQLブロック内でのパラメータの使用方法を指定する整数コード。
ServerType この配列パラメータがバインドされるOracle Databaseの型を指定します。指定できる値のリストは、「ServerTypeプロパティ」OraParameterを参照してください。
ArraySize パラメータの配列要素の数を指定します。このパラメータは、最大バッファ長を計算するために使用されます。
ElementSize [オプション] 要素のサイズを定義します。文字および文字列型の表(配列)パラメータにのみ有効です。ElementSizeの有効サイズは、VarTypeによって異なります。

ElementSizeの指定は、charおよびstring型にバインドする場合以外はオプションです。

ObjectName 大/小文字が区別され、Object名を含む文字列。ServerTypeORATYPE_OBJECTORATYPE_VARRAYまたはORATYPE_TABLEの場合にのみ、この指定が必要です。これは、PL/SQLでREFが使用される場合、ORATYPE_REFに必要です。

IOTypeの設定

IOTypeの設定内容は、次のとおりです。

定数 説明
ORAPARM_INPUT 1 入力変数にのみ使用
ORAPARM_OUTPUT 2 出力変数にのみ使用
ORAPARM_BOTH 3 入力変数と出力変数の両方に使用

この値が正しいことを確認してください。パラメータのタイプがINであるストアド・プロシージャに対してORAPARM_BOTHなど、不正なオプションを指定すると、結果はエラーになります。ORAPARM_BOTHは、INおよびOUTのパラメータ専用です。INパラメータを持つストアド・プロシージャとOUTパラメータを持つ別のストアド・プロシージャに対してこれを使用するわけではありません。この場合は、2つのパラメータを使用します。このようなエラーが発生することはまれですが、パラメータに関するエラーが発生した場合は、IOTypeが正しいことを確認してください。

ServerType

有効な型は、ServerTypeプロパティを参照し、次の点に注意してください。

注意:

  • 外部データ型のORATYPE_NUMBERには、1から38の桁精度を使用できます。

  • 正の数の最大は、0.99999999999999999999 E + 38です。

  • 正の数の最小は、0.1 E-38です。

  • 負の数の最小は、-0.99999999999999999999 E + 38です。

  • 負の数の最大は、0.1 E -38です。

ElementSize(オプション)

文字、文字列およびRAW型に有効です。ElementSizeの有効サイズは、VarTypeによって異なります。このサイズは、個々の文字列またはRAW配列要素の長さを表します。有効範囲は、次のとおりです。

VarType サイズ
ORATYPE_VARCHAR2 有効範囲は、1から1999
ORATYPE_VARCHAR 有効範囲は、1から1999
ORATYPE_STRING 有効範囲は、1から1999
ORATYPE_CHAR 有効範囲は、1から255
ORATYPE_CHARZ 有効範囲は、1から255
ORATYPE_RAW_BIN 有効範囲は、1から4000(備考を参照)

備考

SQL文を再構築するかわりに、パラメータを使用して、配列を挿入、更新および削除するためのSQLバインド変数を表します。SQLバインド変数は、問合せを再解析することなくパラメータ値を変更できるため便利です。SQLバインド変数は、入力変数としてのみ使用します。

パラメータを使用して、PL/SQLバインド(IN/OUT)変数を表すこともできます。PL/SQLのバインド変数は、入力と出力両方の変数として使用できます。

Oracle Raw型の列にバインドする場合は、ServerType値にORATYPE_RAW_BINを使用します。値のPutまたはGetには、バイト配列を使用します。ORATYPE_RAW_BINバインド・バッファの最大許容サイズは、表の列にバインドする場合は2000バイト、ストアド・プロシージャにバインドする場合は32KBです。どの要素(ElementSize引数を参照)も、ストアド・プロシージャにバインドする場合で4000バイト、表の列にバインドする場合で2000バイトを超えることはできません。コード例は、ORACLE_BASE\\ORACLE_HOME\OO4O\VB\Rawディレクトリにあるサンプルを参照してください。