Estrutura JET_TABLECREATE3
Aplica-se a: Windows | Windows Server
A estrutura JET_TABLECREATE3 contém as informações necessárias para criar uma tabela preenchida com colunas e índices em um banco de dados ESE (Mecanismo de Armazenamento Extensível) e que designa uma função de retorno de chamada. A estrutura JET_TABLECREATE3 é usada pela função JetCreateTableColumnIndex3 .
A estrutura JET_TABLECREATE3 foi introduzida no sistema operacional Windows 7.
typedef struct tagJET_TABLECREATE3 {
unsigned long cbStruct;
tchar* szTableName;
tchar* szTemplateTableName;
unsigned long ulPages;
unsigned long ulDensity;
JET_COLUMNCREATE* rgcolumncreate;
unsigned long cColumns;
JET_INDEXCREATE2* rgindexcreate;
unsigned long cIndexes;
tchar* szCallback;
JET_CBTYP cbtyp;
JET_GRBIT grbit;
JET_TABLEID tableid;
un JET_GRBIT grbit;
JET_SPACEHINTS* pSeqSpacehints;
JET_SPACEHINTS* pLVSpacehints;
unsigned long cbSeparateLV;
JET_TABLEID tableid;
unsigned long cCreated;
} JET_TABLECREATE3;>
Membros
Cbstruct
O tamanho dessa estrutura em bytes (para expansão futura). Ele deve ser definido como sizeof( JET_TABLECREATE3 ) em bytes.
szTableName
O nome da tabela a ser criada.
O nome deve atender às seguintes condições:
Ele deve ter um valor menor que JET_cbNameMost, não incluindo o nulo de terminação.
Ele deve consistir no seguinte conjunto de caracteres: 0 a 9, A a Z, a a z e todas as outras pontuações, exceto o ponto de exclamação (!), vírgula (,), colchete de abertura ([) e colchete de fechamento (]); ou seja, os caracteres ASCII 0x20, 0x22 por meio de 0x2d, 0x2f por meio de 0x5a, 0x5c e 0x5d por meio de 0x7f.
Ele não deve começar com um espaço.
Ele deve consistir em pelo menos um caractere que não seja de espaço.
szTemplateTableName
O nome de uma tabela existente da qual herdar a DDL (linguagem de definição de dados base). O uso de uma tabela de modelo permite a fácil criação de muitas tabelas com colunas e índices idênticos.
ulPages
O número inicial de páginas de banco de dados a serem alocadas para a tabela. Especificar um número maior que um poderá reduzir a fragmentação se muitas linhas forem inseridas nesta tabela.
ulDensity
A densidade da tabela, em pontos percentuais. O número deve ser 0 ou no intervalo de 20 a 100. Passar 0 significa que o valor padrão deve ser usado. O valor padrão é 80.
rgcolumncreate
Uma matriz de estruturas de JET_COLUMNCREATE , cada uma das quais corresponde a uma coluna a ser criada na nova tabela.
Ccolumns
O número de elementos JET_COLUMNCREATE no parâmetro rgcolumncreate .
rgindexcreate
Uma matriz de estruturas JET_INDEXCREATE2 , cada uma corresponde a um índice a ser criado na nova tabela.
cIndexes
O número de elementos JET_INDEXCREATE2 no parâmetro rgindexcreate .
szCallback
A função que é chamada durante determinados eventos. cbtyp determina quando a função de retorno de chamada será chamada.
O formato de szCallback deve ser "module!function" — por exemplo, "alpha!beta" refere-se à função beta no módulo chamado "alpha".
O protótipo da função deve corresponder à função de retorno de chamada JET_CALLBACK.
cbtyp
Descreve o tipo de função de retorno de chamada designada por szCallback. Para obter mais informações, consulte JET_CBTYP.
Esse campo de bits é composto por um ou mais dos valores de bit listados na tabela a seguir.
Valor |
Significado |
---|---|
JET_cbtypFinalize |
A função de retorno de chamada será chamada quando uma coluna que pode ser finalizada tiver ido para zero. |
JET_cbtypBeforeInsert |
A função de retorno de chamada será chamada antes da inserção de registro. |
JET_cbtypAfterInsert |
A função de retorno de chamada será chamada depois que o mecanismo de banco de dados terminar de inserir um registro. |
JET_cbtypBeforeReplace |
A função de retorno de chamada será chamada antes da modificação de um registro. |
JET_cbtypAfterReplace |
A função de retorno de chamada será chamada após concluir a modificação de um registro. |
JET_cbtypBeforeDelete |
A função de retorno de chamada será chamada antes da exclusão de um registro. |
JET_cbtypAfterDelete |
A função de retorno de chamada será chamada depois que um registro for excluído. |
JET_cbtypUserDefinedDefaultValue |
A função de retorno de chamada será chamada para calcular um padrão definido pelo usuário. |
JET_cbtypFreeCursorLS |
A função de retorno de chamada será chamada quando o armazenamento local associado a um cursor precisar ser liberado. |
JET_cbtypFreeTableLS |
A função de retorno de chamada será chamada quando o armazenamento local associado a uma tabela precisar ser liberado. |
grbit
Um grupo de bits que contém zero ou mais dos valores de opção de chamada listados na tabela a seguir.
Valor |
Significado |
---|---|
JET_bitTableCreateFixedDDL |
Impede operações DDL na tabela (como adicionar ou remover colunas). |
JET_bitTableCreateTemplateTable |
Faz com que a tabela seja uma tabela de modelo. Em seguida, novas tabelas podem especificar o nome dessa tabela como sua tabela de modelo. Definir JET_bitTableCreateTemplateTable implica JET_bitTableCreateFixedDDL. |
JET_bitTableCreateNoFixedVarColumnsInDerivedTables |
Deve ser usado em conjunto com JET_bitTableCreateTemplateTable. Preterido. Não use. |
pSeqSpacehints
Um ponteiro para uma estrutura JET_SPACEHINTS para o índice sequencial padrão.
o pSeqSpacehints foi introduzido no Windows 7.
pLVSpacehints
Um ponteiro para uma estrutura de JET_SPACEHINTS para uma árvore de Valor Longo Separado.
pLVSpacehints foi introduzido no Windows 7.
cbSeparateLV
O tamanho para separar um LV intrínseco do registro primário. Qualquer estrutura c de valor longo para uma árvore LV separada. Para obter mais informações, consulte ng-value em JET_SPACEHINTS. Colunas de valor longo menores que esse valor poderão ser separadas se o registro se tornar muito grande.
cbSeparateLV foi introduzido no Windows 7.
Tableid
Um campo de saída que contém o JET_TABLEID da nova tabela se a chamada à API for bem-sucedida. Se a chamada à API falhar, o valor será indefinido. Esta tabela é aberta exclusivamente.
cCreated
Um campo de saída que contém a contagem de objetos criados se a chamada à API for bem-sucedida. Se a chamada à API falhar, o valor será indefinido.
A contagem de objetos criados é igual à soma de colunas, tabelas e índices criados com êxito.
Requisitos
Requisito | Valor |
---|---|
Cliente |
Requer o Windows Vista ou o Windows XP. |
Servidor |
Requer o Windows Server 2008 ou o Windows Server 2003. |
Cabeçalho |
Declarado em Esent.h. |
Unicode |
Implementado como JET_TABLECREATE3_W (Unicode) e ANSI ( JET_TABLECREATE3_A ). |
Confira também
JET_CALLBACK
JET_CBTYP
JET_CONDITIONALCOLUMN
JET_ERR
JET_GRBIT
JET_INDEXCREATE
JET_TABLEID
JetCreateTable
JetCreateTableColumnIndex
JetCreateTableColumnIndex2
JetDefragment2