Partager via


Fonction JetGetColumnInfo

S’applique à : Windows | Windows Server

Fonction JetGetColumnInfo

La fonction JetGetColumnInfo récupère des informations sur une colonne.

    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
    );

Paramètres

sesid

Contexte de session de base de données à utiliser pour l’appel d’API.

dbid

Identifie, avec szTableName, la table qui contient la colonne à partir de laquelle les informations sont récupérées.

szTableName

Identifie, avec dbid, la table qui contient la colonne à partir de laquelle les informations sont récupérées.

szColumnName

Nom de la colonne pour laquelle les informations sont extraites.

pvResult

Pointeur vers une mémoire tampon qui recevra les informations. Le type de la mémoire tampon dépend d’InfoLevel. L’appelant doit être configuré pour aligner la mémoire tampon de manière appropriée.

cbMax

Taille, en octets, de la mémoire tampon passée dans pvResult.

InfoLevel

Type d’informations à récupérer pour la colonne spécifiée par szColumnName. Le format des données stockées dans pvResult dépend de ce paramètre. Pour le schéma de la table temporaire, consultez JET_COLUMNLIST.

Ces InfoLevels sont différenciés par :

  • JET_ColInfoListSortColumnid triez la table temporaire par columnid.

  • JET_ColInfoListCompact compactez la sortie. Pour plus d’informations sur la sortie compacte, consultez JET_COLUMNLIST.

Les options suivantes peuvent être utilisées avec ce paramètre.

Valeur

Signification

JET_ColInfo

JET_ColInfo et JET_ColInfoByColid récupérer les mêmes informations. pvResult est interprété comme un JET_COLUMNDEF, et les champs de la structure JET_COLUMNDEF sont renseignés de manière appropriée.

JET_ColInfoBase

pvResult est interprété comme une structure JET_COLUMNBASE . Ceci est similaire à une structure de JET_COLUMNDEF . Si cette fonction réussit, la structure est remplie avec les valeurs appropriées. Si cette fonction échoue, la structure contient des données non définies.

JET_ColInfoByColid

Comme JET_ColInfo, pvResult est interprété comme un JET_COLUMNDEF, sauf que cette InfoLevel indique que la colonne demandée (szColumName) n’est pas le nom de colonne de chaîne, mais un pointeur vers un JET_COLUMNID.

JET_ColInfoList

pvResult est interprété comme une structure JET_COLUMNLIST . Si cette fonction réussit, la structure est remplie avec les valeurs appropriées. Une table temporaire est ouverte et est identifiée par le membre tableid de la structure JET_COLUMNLIST . La table doit être fermée avec JetCloseTable. Si cette fonction échoue, la structure contient des données non définies.

JET_ColInfoListCompact

Identique à JET_ColInfoList.

JET_ColInfoListSortColumnid

Identique à JET_ColInfoList ; Toutefois, la table résultante est triée par columnid, au lieu du nom de la colonne.

JET_ColInfoSysTabCursor

JET_ColInfoSysTabCursor est déconseillé et son utilisation retourne JET_errFeatureNotAvailable.

JET_ColInfoBaseByColId

Comme JET_ColInfoBase, pvResult est interprété comme un JET_COLUMNBASE, sauf que cette InfoLevel indique que la colonne demandée (szColumName) n’est pas le nom de la colonne de chaîne, mais un pointeur vers un JET_COLUMNID.

Windows Vista : Cette valeur est introduite dans Windows Vista.

JET_ColInfoGrbitNonDerivedColumnsOnly

Retourne uniquement des colonnes non dérivées (si la table est dérivée d’un modèle).

Cette valeur peut être logiquement ou se trouver dans InfoLevel, lorsque l’InfoLevel de base est JET_ColInfoList.

Windows Vista : Cette valeur est introduite dans Windows Vista.

JET_ColInfoGrbitMinimalInfo

Retourne uniquement le nom et le columnid de chaque colonne.

Cette valeur peut être logiquement ou se trouver dans InfoLevel, lorsque l’InfoLevel de base est JET_ColInfoList.

Windows Vista : Cette valeur est introduite dans Windows Vista.

JET_ColInfoGrbitSortByColumnid

Triez la liste de colonnes retournée par columnid (la valeur par défaut est de trier la liste par nom de colonne).

Cette valeur peut être logiquement ou se trouver dans InfoLevel, lorsque l’InfoLevel de base est JET_ColInfoList.

Windows Vista : Cette valeur est introduite dans Windows Vista.

Valeur renvoyée

Cette fonction retourne le type de données JET_ERR avec l’un des codes de retour suivants. Pour plus d’informations sur les erreurs ESE possibles, consultez Erreurs du moteur de stockage extensible et Paramètres de gestion des erreurs.

Code de retour

Description

JET_errSuccess

L’opération s’est terminée avec succès.

JET_errColumnNotFound

La colonne nommée szColumnName est introuvable dans la table.

JET_errFeatureNotAvailable

Un infoLevel incorrect a été spécifié.

JET_errInvalidName

Cette erreur peut être retournée si :

  • Un nom incorrect pour szTableName a été donné.

  • Un nom incorrect pour szColumnName a été donné.

JET_errInvalidParameter

Cette erreur peut être retournée si :

  • Un infoLevel incorrect a été spécifié.

  • Un szTableName NULL a été passé.

  • La mémoire tampon est trop petite.

Notes

JetGetTableColumnInfo et JetGetColumnInfo récupèrent des informations sur une colonne. La différence entre les deux est la façon dont la table est identifiée :

  • JetGetTableColumnInfo identifie une table par tableid.

  • JetGetColumnInfo identifie une table par combinaison dbid et szTableName .

Lors de la récupération de données avec JET_ColInfoList, JET_ColInfoListSortColumnid ou JET_ColInfoListCompact, une table temporaire est ouverte. La table temporaire contient des données et la structure JET_COLUMNLIST contient suffisamment d’informations pour parcourir la table temporaire. La table temporaire doit être fermée avec JetCloseTable.

Spécifications

Condition requise Valeur

Client

Nécessite Windows Vista, Windows XP ou Windows 2000 Professionnel.

Serveur

Nécessite Windows Server 2008, Windows Server 2003 ou Windows 2000 Server.

En-tête

Déclaré dans Esent.h.

Bibliothèque

Utilisez ESENT.lib.

DLL

Nécessite ESENT.dll.

Unicode

Implémenté en tant que JetGetColumnInfoW (Unicode) et JetGetColumnInfoA (ANSI).

Voir aussi

Paramètres de gestion des erreurs
Erreurs du moteur de stockage extensible
JET_COLUMNBASE
JET_COLUMNDEF
JET_COLUMNID
JET_COLUMNLIST
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetCloseTable
JetGetTableColumnInfo