Função JetGetColumnInfo

Aplica-se a: Windows | Windows Server

Função JetGetColumnInfo

A função JetGetColumnInfo recupera informações sobre uma coluna.

    JET_ERR JET_API JetGetColumnInfo(
      __in          JET_SESID sesid,
      __in          JET_DBID dbid,
      __in          const tchar* szTableName,
      __in          const tchar* szColumnName,
      __out         void* pvResult,
      __in          unsigned long cbMax,
      __in          unsigned long InfoLevel
    );

Parâmetros

sesid

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

dbid

Identifica, juntamente com szTableName, a tabela que contém a coluna da qual as informações são recuperadas.

szTableName

Identifica, juntamente com dbid, a tabela que contém a coluna da qual as informações são recuperadas.

szColumnName

O nome da coluna para a qual as informações são buscadas.

pvResult

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

cbMax

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

InfoLevel

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

Esses InfoLevels são diferenciados por:

  • 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 opções a seguir estão disponíveis para uso com esse parâmetro.

Valor

Significado

JET_ColInfo

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

JET_ColInfoBase

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

JET_ColInfoByColid

Assim como JET_ColInfo, 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_ColInfoList

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

JET_ColInfoListCompact

O mesmo que JET_ColInfoList.

JET_ColInfoListSortColumnid

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

JET_ColInfoSysTabCursor

JET_ColInfoSysTabCursor for 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: Esse valor é introduzido no Windows Vista.

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 foi introduzido no Windows Vista.

JET_ColInfoGrbitMinimalInfo

Retornar apenas o nome da coluna e 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

Classifique 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 de 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 nulo 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 JetGetColumnInfoW (Unicode) e JetGetColumnInfoA (ANSI).

Consulte Também

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