目的
テーブル演算子作成者は、入力や出力ストリームをオープンできます。
構文規則
FNC_TblOpHandle_t * FNC_TblOpOpen(int streamno, char mode, unsigned int options);
- int streamno
- ストリーム番号。
- char mode
- ストリームのモード'R'または'W'。
- unsigned int options
- 個々の属性にアクセスまたは修正ができるかどうか。有効な戻り値は以下のとおりです。
- TBLOP_NOOPTIONS - 2つのオプションにより属性にアクセスまたは修正することが可能です。
- FNC_TblOpGetAttributeByNdxまたはFNC_TblOpBindAttributeByNdxの使用。
- インジケータ、列ポインタ、および行の長さをハンドルで直接設定。
- TBLOP_RAWMODE - アクセス モードが生の行(raw row)となることを示します。生の行の長さおよび生の行の本体にアクセスし設定することができます。詳細については、FNC_TblOpReadとFNC_TblOpWriteを参照してください。
入力ストリームまたは出力ストリームのいずれかでoptions用にTBLOP_RAWMODEが選択された場合、LOB列はサポートされません。
- TBLOP_NOOPTIONS - 2つのオプションにより属性にアクセスまたは修正することが可能です。
戻り値
FNC_TblOpHandle_t構造体または、エラー発生時にNULLを参照するポインタ。
FNC_TblOpHandle_t構造の詳細については、テーブル演算子のデータ構造を参照してください。
使用上の注意
この関数を使用して、1回のテーブル演算子の呼び出し内で、入力ストリームを複数回オープンすることができます。この関数は、streamno値に基づき、読み出しや書き込みのための特定のストリーム番号modeのイテレータ インターフェースを初期化します。読み取り位置はオープンの度にストリームの開始位置にリセットされます。入力ストリームをオープンしないことや、入力ストリームをオープンはするが決して読み取りをしないことを選択することが可能です。
1回のテーブル演算子の呼び出し内で、出力ストリームを1回だけオープンすることができます。出力ストリームを決してオープンしないことや、出力ストリームをオープンはするが決して書き込みをしないことを選択することが可能です。
PARTITION BY句が指定されている場合には、ストリームのオープンはパーティション内の行を指します。例えば、ファイルの終端はパーティション内の最終ローの読み取り時に発生します。PARTITION BY句が指定されていない場合には、ストリームのオープンはAMP内の行を指します。
以下の行為は許可されず、エラーを返します。
- すでに開いている入力または出力ストリームのオープン。
- 出力ストリームのクローズと再オープン。
FNC_TblOpOpenの使用例
この関数の使用方法の例については、C テーブル演算子を参照してください。