Função JetGetTableColumnInfo

Aplica-se a: Windows | Windows Server

Função JetGetTableColumnInfo

A função JetGetTableColumnInfo recupera informações sobre uma coluna de tabela.

JET_ERR JET_API JetGetTableColumnInfo(
  __in          JET_SESID sesid,
  __in          JET_TABLEID tableid,
  __in          const tchar* szColumnName,
  __out         void* pvResult,
  __in          unsigned long cbMax,
  __in          unsigned long InfoLevel
);

Parâmetros

sesid

O contexto de sessão de banco de dados a ser usado para a chamada à API.

Tableid

A tabela que contém a coluna para a qual buscar informações.

szColumnName

O nome da coluna para a qual buscar informações.

pvResult

Ponteiro para um buffer que receberá as informações. O tipo do buffer depende de InfoLevel. O chamador deve ser configurado para alinhar o buffer adequadamente.

cbMax

O tamanho, em bytes, do buffer que foi passado em pvResult.

InfoLevel

O tipo de informação que será recuperada para a coluna especificada por szColumnName. O formato dos dados armazenados no pvResult depende do InfoLevel. Para obter o esquema da tabela temporária, consulte JET_COLUMNLIST.

  • JET_ColInfoListSortColumnid classificará a tabela temporária por columnid.

  • JET_ColInfoListCompact compactará a saída. Para obter mais informações sobre a saída compacta, consulte JET_COLUMNLIST.

As seguintes opções podem ser definidas para este parâmetro:

Valor

Significado

JET_ColInfo

pvResult é interpretado como um JET_COLUMNDEF e os campos da estrutura JET_COLUMNDEF são preenchidos adequadamente. JET_ColInfo e JET_ColInfoByColid recuperam as mesmas informações.

JET_ColInfoBase

pvResult é interpretado como uma estrutura de JET_COLUMNBASE . Isso é semelhante a uma estrutura JET_COLUMNDEF . Se essa função for bem-sucedida, a estrutura será preenchida com valores apropriados. Se essa função falhar, a estrutura conterá dados indefinidos.

JET_ColInfoByColid

pvResult é interpretado como um JET_COLUMNDEF, exceto que esse InfoLevel indica que a coluna solicitada (szColumName) não é o nome da coluna de cadeia de caracteres, mas um ponteiro para um JET_COLUMNID. JET_ColInfo e JET_ColInfoByColid recuperam as mesmas informações.

JET_ColInfoList

pvResult é interpretado como uma estrutura de JET_COLUMNLIST . Se essa função for bem-sucedida, a estrutura será preenchida com valores apropriados. Uma tabela temporária é aberta e identificada pelo membro tableid do JET_COLUMNLIST. A tabela deve ser fechada com JetCloseTable. Se essa função falhar, a estrutura conterá dados indefinidos.

JET_ColInfoListCompact

pvResult é interpretado como uma estrutura de JET_COLUMNLIST . Se essa função for bem-sucedida, a estrutura será preenchida com valores apropriados. Uma tabela temporária é aberta e identificada pelo membro tableid do JET_COLUMNLIST. A tabela deve ser fechada com JetCloseTable. Se essa função falhar, a estrutura conterá dados indefinidos.

JET_ColInfoListSortColumnid

Mesmo que JET_ColInfoList, no entanto, a tabela resultante é classificada por columnid, em vez do nome da coluna.

JET_ColInfoSysTabCursor

JET_ColInfoSysTabCursor foi preterido e o uso dele retornará JET_errFeatureNotAvailable.

JET_ColInfoBaseByColId

Assim como JET_ColInfoBase, pvResult é interpretado como um JET_COLUMNBASE, exceto que esse InfoLevel indica que a coluna solicitada (szColumName) não é o nome da coluna de cadeia de caracteres, mas um ponteiro para um JET_COLUMNID.

Windows Vista: Isso está disponível no Windows Vista e posterior.

JET_ColInfoGrbitNonDerivedColumnsOnly

Retornar somente colunas não derivadas (se a tabela for derivada de um modelo).

Esse valor pode ser logicamente ou'd no InfoLevel, quando o InfoLevel base é JET_ColInfoList.

Windows Vista: Esse valor é introduzido no Windows Vista.

JET_ColInfoGrbitMinimalInfo

Retorna apenas o nome da coluna e a columnid de cada coluna.

Esse valor pode ser logicamente ou'd no InfoLevel, quando o InfoLevel base é JET_ColInfoList.

Windows Vista: Esse valor é introduzido no Windows Vista.

JET_ColInfoGrbitSortByColumnid

Classificar a lista de colunas retornada por columnid (o padrão é classificar lista por nome de coluna).

Esse valor pode ser logicamente ou'd no InfoLevel, quando o InfoLevel base é JET_ColInfoList.

Windows Vista: Esse valor é introduzido no Windows Vista.

Valor Retornado

Essa função retorna o tipo de dados JET_ERR com um dos seguintes códigos de retorno. Para obter mais informações sobre os possíveis erros do ESE, consulte Erros extensíveis do mecanismo de armazenamento e parâmetros de tratamento de erros.

Código de retorno

Descrição

JET_errSuccess

A operação foi concluída com sucesso.

JET_errColumnNotFound

A coluna chamada szColumnName não foi encontrada na tabela.

JET_errFeatureNotAvailable

Um InfoLevel inválido foi especificado.

JET_errInvalidName

Esse erro poderá ser retornado se:

  • Um nome ruim para szTableName foi dado.

  • Um nome ruim para szColumnName foi dado.

JET_errInvalidParameter

Esse erro poderá ser retornado se:

  • Um InfoLevel inválido foi especificado.

  • Um null szTableName foi passado.

  • O buffer é muito pequeno.

Comentários

JetGetTableColumnInfo e JetGetColumnInfo recuperam informações sobre uma coluna. A diferença entre eles é como a tabela é identificada:

  • JetGetTableColumnInfo identifica uma tabela por tableid.

  • JetGetColumnInfo identifica uma tabela por combinação dbid e szTableName .

Ao recuperar dados com JET_ColInfoList, JET_ColInfoListSortColumnid ou JET_ColInfoListCompact, uma tabela temporária será aberta. A tabela temporária contém dados e a estrutura JET_COLUMNLIST contém informações suficientes para percorrer a tabela temporária. A tabela temporária deve ser fechada com JetCloseTable.

Requisitos

Requisito Valor

Cliente

Requer Windows Vista, Windows XP ou Windows 2000 Professional.

Servidor

Requer o Windows Server 2008, o Windows Server 2003 ou o Windows 2000 Server.

Cabeçalho

Declarado em Esent.h.

Biblioteca

Use ESENT.lib.

DLL

Requer ESENT.dll.

Unicode

Implementado como JetGetTableColumnInfoW (Unicode) e JetGetTableColumnInfoA (ANSI).

Consulte Também

Erros extensíveis do mecanismo de armazenamento
Parâmetros de tratamento de erro
JET_COLUMNBASE
JET_COLUMNDEF
JET_COLUMNID
JET_COLUMNLIST
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetCloseTable
JetGetColumnInfo
JetGetTableColumnInfo