Структура 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 и 0x5d по 0x7f.
- Не начинается с пробела.
- Состоит по крайней мере из одного символа, отличного от пробела.
szTemplateTableName
Имя уже существующей таблицы, от которой следует наследовать базовый DDL (язык определения данных). Использование таблицы шаблона позволяет легко создавать множество таблиц с одинаковыми столбцами и индексами.
ulPages
Начальное количество страниц базы данных, выделяемых для таблицы. Если в эту таблицу вставить много строк, можно уменьшить фрагментацию.
ulDensity
Плотность таблицы в процентных пунктах. Число должно быть либо 0, либо находиться в диапазоне от 20 до 100. Передача 0 означает, что следует использовать значение по умолчанию. Значение по умолчанию — 80.
rgcolumncreate
Массив JET_COLUMNCREATE структур, каждая из которых соответствует столбцу, создаваемому в новой таблице.
cColumns
Количество JET_COLUMNCREATE элементов в rgcolumncreate.
rgindexcreate
Массив JET_INDEXCREATE структур, каждая из которых соответствует индексу, создаваемому в новой таблице.
cIndexes
Количество элементов JET_INDEXCREATE в rgindexcreate.
grbit
Группа битов, содержащих параметры для этого вызова, которые включают ноль или более следующих значений.
Значение |
Значение |
---|---|
JET_bitTableCreateFixedDDL |
Настройка JET_bitTableCreateFixedDDL предотвращает операции DDL с таблицей (например, добавление или удаление столбцов). |
JET_bitTableCreateTemplateTable |
Настройка JET_bitTableCreateTemplateTable приводит к тому, что таблица будет шаблонной. Затем новые таблицы могут указать имя этой таблицы в качестве таблицы шаблонов. Настройка JET_bitTableCreateTemplateTable подразумевает JET_bitTableCreateFixedDDL. |
JET_bitTableCreateNoFixedVarColumnsInDerivedTables |
Не рекомендуется. Не используется. |
tableid
Поле вывода, в котором содержится JET_TABLEID новой таблицы в случае успешного вызова API. Если вызов API завершается сбоем, значение не определено.
cCreated
Выходное поле, содержащее количество объектов, созданных при успешном вызове API. Если вызов API завершается сбоем, значение не определено.
Число созданных объектов равно сумме успешно созданных столбцов, таблиц и индексов.
Требования
Требование | Значение |
---|---|
Клиент |
Требуется Windows Vista, Windows XP или Windows 2000 Professional. |
Сервер |
Требуется Windows Server 2008, Windows Server 2003 или Windows 2000 Server. |
Верхняя часть |
Объявлено в Esent.h. |
Юникод |
Реализовано в виде JET_TABLECREATE_W (Юникод) и JET_TABLECREATE_A (ANSI). |
См. также:
JET_CALLBACK
JET_CBTYP
JET_CONDITIONALCOLUMN
JET_ERR
JET_GRBIT
JET_TABLEID
JET_INDEXCREATE
JetCreateTable
JetCreateTableColumnIndex
JetCreateTableColumnIndex2