JET_TABLECREATE 構造体
適用対象: Windows |Windows Server
JET_TABLECREATE 構造体
JET_TABLECREATE構造体には、ESE データベースに列とインデックスが設定されたテーブルを作成するために必要な情報が含まれています。 JET_TABLECREATE構造体は JetCreateTableColumnIndex によって使用されます
typedef struct tagJET_TABLECREATE {
unsigned long cbStruct;
tchar* szTableName;
tchar* szTemplateTableName;
unsigned long ulPages;
unsigned long ulDensity;
JET_COLUMNCREATE* rgcolumncreate;
unsigned long cColumns;
JET_INDEXCREATE* rgindexcreate;
unsigned long cIndexes;
JET_GRBIT grbit;
JET_TABLEID tableid;
unsigned long cCreated;
} JET_TABLECREATE;
メンバー
cbStruct
この構造体のサイズをバイト単位で指定します (将来の拡張用)。 sizeof( JET_TABLECREATE ) にバイト単位で設定する必要があります。
szTableName
作成するテーブルの名前です。
名前は、次の条件を満たす必要があります。
- JET_cbNameMostより小さい値を指定します。終端の NULL は含まれません。
- 0 から 9、A から Z、a から z、およびその他のすべての句読点 (!)、コンマ (、)、左角かっこ ([])、ASCII 文字0x20、0x22から0x2d 0x2f、0x5a、0x5c、0x7fまでの0x5dで構成されます。
- スペースで始まる必要はありません。
- 少なくとも 1 つの空白以外の文字で構成されます。
szTemplateTableName
基本 DDL (データ定義言語) を継承する既存のテーブルの名前。 テンプレート テーブルを使用すると、同じ列とインデックスを持つ多数のテーブルを簡単に作成できます。
ulPages
テーブルに割り当てるデータベース ページの初期数。 1 より大きい数値を指定すると、このテーブルに多数の行が挿入されると断片化が軽減される可能性があります。
ulDensity
表の密度 (パーセントポイント単位)。 数値は、0 または 20 ~ 100 の範囲である必要があります。 0 を渡すと、既定値を使用する必要があることを意味します。 既定値は 80 です。
rgcolumncreate
JET_COLUMNCREATE構造体の配列。各構造体は、新しいテーブルに作成される列に対応します。
cColumns
rgcolumncreate 内のJET_COLUMNCREATE要素の数。
rgindexcreate
JET_INDEXCREATE構造体の配列。各構造体は、新しいテーブルに作成されるインデックスに対応します。
cIndexes
rgindexcreate 内のJET_INDEXCREATE要素の数。
grbit
次の値の 0 個以上を含む、この呼び出しのオプションを含むビットのグループ。
値 |
説明 |
---|---|
JET_bitTableCreateFixedDDL |
JET_bitTableCreateFixedDDL設定すると、テーブルに対する DDL 操作 (列の追加や削除など) が防止されます。 |
JET_bitTableCreateTemplateTable |
JET_bitTableCreateTemplateTableを設定すると、テーブルがテンプレート テーブルになります。 新しいテーブルでは、このテーブルの名前をテンプレート テーブルとして指定できます。 JET_bitTableCreateTemplateTable設定は、JET_bitTableCreateFixedDDLを意味します。 |
JET_bitTableCreateNoFixedVarColumnsInDerivedTables |
非推奨。 使用しないでください。 |
tableid
API 呼び出しが成功した場合に新しいテーブルの JET_TABLEID を保持する出力フィールド。 API 呼び出しが失敗した場合、値は未定義です。
cCreated
API 呼び出しが成功した場合に作成されたオブジェクトの数を含む出力フィールド。 API 呼び出しが失敗した場合、値は未定義です。
作成されるオブジェクトの数は、正常に作成された列、テーブル、およびインデックスの合計と同じです。
必要条件
要件 | 値 |
---|---|
Client |
Windows Vista、Windows XP、または Windows 2000 Professional が必要です。 |
[サーバー] |
Windows Server 2008、Windows Server 2003、または Windows 2000 Server が必要です。 |
Header |
Esent.h で宣言されています。 |
Unicode |
JET_TABLECREATE_W (Unicode) およびJET_TABLECREATE_A (ANSI) として実装されます。 |
参照
JET_CALLBACK
JET_CBTYP
JET_CONDITIONALCOLUMN
JET_ERR
JET_GRBIT
JET_TABLEID
JET_INDEXCREATE
JetCreateTable
JetCreateTableColumnIndex
JetCreateTableColumnIndex2