Compartilhar via


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