表内のすべての列に関する情報を取得します。通常、*nreturnedは、colinfoに返される列の数に設定されます。ttXlaColDesc_tデータ型は、「ttXlaColDesc_t」で定義されています。 SystemTableIDまたはuserTableIDは、目的の表について記述します(詳細は、「ttXlaGetTableInfo」を参照)。このコールは、表の定義内の変更に対してシリアライズされます。
この関数の使用方法については、「列記述の取得」を参照してください。
SQLRETURN ttXlaGetColumnInfo(ttXlaHandle_h handle,
SQLUBIGINT systemTableID,
SQLUBIGINT userTableID,
out ttXlaColDesc_t *colinfo,
SQLINTEGER maxcols,
out SQLINTEGER *nreturned)
パラメータ | 型 | 説明 |
handle | ttXlaHandle_h | データ・ストアのトランザクション・ログ・ハンドル。 |
systemTableID | SQLUBIGINT | 表のシステムID。 |
userTableID | SQLUBIGINT | 表のユーザーID。 |
colinfo | out ttXlaColDesc_t * | maxcols列の個別の記述を保持できる十分な大きさのバッファへのポインタ。 |
maxcols | SQLINTEGER | colInfoバッファに格納可能な列の最大数。この表にmaxcolsを超える列を含めると、エラーが返されます。 |
nreturned | out SQLINTEGER * | 返される列の数。 |
コールが成功すると、SQL_SUCCESSが返されます。返されない場合は、ttXlaErrorを使用してエラーをレポートします。
この例では、次の定義を想定しています。
ttXlaColDesc_t colinfo[20];
SQLUBIGINT systemTableID, userTableID;
SQLINTEGER ncols;
システム表識別子を使用して最大20列の記述を取得するには、次のコールを実行します。
rc = ttXlaGetColumnInfo(xlahandle, systemTableID, 0,
colinfo, 20, &ncols);
ユーザー表識別子も、同様に使用できます。
rc = ttXlaGetColumnInfo(xlahandle, 0, userTableID,
colinfo, 20, &ncols);
返された行内の列データにアクセスする方法の詳細および例については、「ttXlaColDesc_t」を参照してください。