FNC_TblOpRead - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/rin1593638965306.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1147
Product Category
Software
Teradata Vantage

テーブル演算子作成者は入力ストリームから行を読み取ることができます。この関数は、読み取りコンテキストをデータの次の入力行に設定して、TBLOP_SUCCESS、TBLOP_EOF (データの終了)、TBLOP_ABORT、またはTBLOP_ERRORを示す整数を返します。

構文規則

int
FNC_TblOpRead(FNC_TblOpHandle_t *handle)

構文要素

handle
入力ストリームに関連するハンドル。これは、FNC_TblOpOpenが返すハンドルである必要があります。

FNC_TblOpHandle_t構造の詳細については、テーブル演算子のデータ構造を参照してください。

使用上の注意

すべての入力行またはサブセットを読み取ることができます。アクセスの効率化を図るため、ハンドル構造体を通して直接データにアクセスすることができます。

最初にFNC_TblOpOpenを呼び出してから、 FNC_TblOpOpenから引数として返るハンドルをFNC_TblOpReadへ渡します。TBLOP_NOOPTIONSに設定されたoptionsフィールドでFNC_TblOpOpenを呼び出す場合には、読み取り呼び出しによりフィールド アクセスを作成し、FNC_TblOpGetAttributeByNdx経由で個々の属性に直接アクセスを許可するか、またはハンドル -> 行 -> インジケータ、columnptr[index]、およびlengths[index]経由で直接アクセスを許可します。

optionsフィールドがTBLOP_RAWMODEに設定されている場合には、以下の方法により未加工の行にアクセスすることができます。
Access handle->row to access the current raw row length, 
IndicData format, record body)

ファイルの終端を超えて読み取る場合には、TBLOP_EOFが返されます。PARTITION BY句を指定する場合には、パーティション内の最後の行の読み取り後にファイルの終端が現れます。

FNC_TblOpReadの使用例

この関数の使用例については、C テーブル演算子を参照してください。

関連情報

テーブル演算子のカスタム句の詳細については、<Teradata Vantage™ - SQLデータ操作言語、B035-1146>のSELECT文FROM句の解説を参照してください。

現在の行に関する情報を保存するcurrent_row_t構造体の詳細については、テーブル演算子のデータ構造を参照してください。