Distributed Tuning Interface Guide (v11)

PvAddTable() (DTI 関数)

既存の辞書とデータ ファイルの、テーブル プロパティで指定された位置に、新規のテーブルを作成します。

ヘッダー ファイル:ddf.h(「ヘッダー ファイル」も参照)

関数が最初に利用可能になるライブラリ:w3dbav75.dll(Windows)、libpsqldti.so(Linux)(「リンク ライブラリ」も参照)

構文

PRESULT PvAddTable( 
	WORD            dictHandle, 
	TABLEINFO*      tableProps, 
	COLUMNMAP*      columnList, 
	WORD            columnCount, 
	INDEXMAP*       indexList, 
	WORD            indexCount); 

引数

In
dictHandle
PvOpenDatabase() (DTI 関数)によって返される、開いている辞書のハンドル。
In
tableProps
テーブル情報を含む構造体。
In
columnList
テーブルに定義された列の配列。
In
columnCount
columnList 内の列数。
In
indexList
インデックス定義の配列。
In
indexCount
indexList 配列内のインデックス数。

戻り値

PCM_Success
操作は成功しました。
PCM_errFailed
操作は成功しませんでした。
PCM_errInvalidDictionaryHandle
指定された辞書ハンドルは存在しません。
PCM_errTableNotFound
指定されたテーブルが見つかりません。
PCM_errMemoryAllocation
メモリの割り当て中にエラーが発生しました。
PCM_errInvalidColumnName
指定された列名は無効です。
PCM_errInvalidDataType
指定されたデータ型は無効です。
PCM_errDuplicateColumnName
この列名は既にテーブルに存在します。
PCM_errInvalidDataSize
データ サイズが無効です。
PCM_errInvalidIndexName
インデックス名が無効です。
PCM_errColumnNotFound
セグメントに指定された列が見つかりません。

備考

まず PvOpenDatabase() (DTI 関数)を使用して、辞書を正常に開く必要があります。

この関数にはテーブル情報、列、インデックスの入力が必要です。テーブルの作成にインデックスは必要ないため、indexCountindexList はオプションのパラメーターです。

同じ名前のテーブルが指定された辞書に既に存在している場合、この関数は失敗します。

テーブル プロパティは正しく設定する必要があり、少なくとも 1 列の配列を渡さなければなりません。

テーブルの説明に使用する COLUMNMAPINDEXMAP 配列と TABLEINFO 構造体を割り当てて解放する必要があります。COLUMNMAP フラグも参照してください。

PvGetTable() (DTI 関数)関数で、行内でのフィールドのオフセットにアクセスできます。ddfstrct.h の COLUMNMAP 構造体は変更されて、この追加情報を持つようになりました。この新しいフィールドは、PvAddTable() (DTI 関数)および PvFreeTable() (DTI 関数)関数を呼び出すときは無視されます。ddfstrct.h および ddf.h を参照してください。

関連項目

PvStart() (DTI 関数)
PvOpenDatabase() (DTI 関数)
PvGetTableNames() (DTI 関数)
PvFreeTableNames() (DTI 関数)
PvDropTable() (DTI 関数)
PvCloseDictionary() (DTI 関数)
PvStop() (DTI 関数)


PvAddLicense() (DTI 関数)

PvAddUserToGroup() (DTI 関数)