Fonction JetGetTableInfo
S’applique à : Windows | Windows Server
Fonction JetGetTableInfo
La fonction JetGetTableInfo récupère diverses informations sur une table d’une base de données.
JET_ERR JET_API JetGetTableInfo(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__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.
tableid
Table à laquelle les informations s’appliquent.
pvResult
Pointeur vers une mémoire tampon qui recevra les informations. Le type de la mémoire tampon dépend d’InfoLevel. Il incombe à l’appelant d’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 qui seront récupérées pour la table spécifiée par tableid. Le format des données stockées dans pvResult dépend d’InfoLevel.
Les options suivantes peuvent être définies pour ce paramètre :
Valeur |
Signification |
---|---|
JET_TblInfo |
pvResult est interprété comme une structure JET_OBJECTINFO . Si la méthode réussit, la structure JET_OBJECTINFO est remplie avec les données appropriées. En cas d’échec, le contenu n’est pas défini. |
JET_TblInfoDbid |
pvResult est traité comme un tableau de deux objets JET_DBID . L’identificateur de base de données de la base de données propriétaire de la table est stocké deux fois dans ce tableau. |
JET_TblInfoDumpTable |
JET_TblInfoDumpTable est déconseillé. L’API retourne JET_errFeatureNotAvailable. |
JET_TblInfoName |
JET_TblInfoName récupère le nom de la table et le stocke dans pvResult. Si la mémoire tampon est trop petite, le comportement n’est pas défini. |
JET_TblInfoMostMany |
JET_TblInfoMostMany récupère le nom de la table et le stocke dans pvResult. Si la mémoire tampon est trop petite, le comportement n’est pas défini. |
JET_TblInfoOLC |
JET_TblInfoOLC est déconseillé. L’API retourne JET_errFeatureNotAvailable. |
JET_TblInfoRvt |
JET_TblInfoRvt est déconseillé. L’API retourne JET_errQueryNotSupported. |
JET_TblInfoResetOLC |
JET_TblInfoResetOLC est déconseillé. L’API retourne JET_errFeatureNotAvailable. |
JET_TblInfoSpaceAlloc |
pvResult est interprété comme un tableau de deux ULONG :
|
JET_TblInfoSpaceAvailable |
pvResult est interprété comme un ULONG. L’ULONG est la somme du nombre de pages disponibles dans la table, de ses index et de l’arborescence de valeurs longue. |
JET_TblInfoSpaceOwned |
pvResult est interprété comme un ULONG. L’ULONG correspond à la somme du nombre de pages appartenant à la table (y compris ses index, l’arborescence de valeurs longue et toutes les pages disponibles dans celle-ci). |
JET_TblInfoSpaceUsage |
Le comportement de l’API dépend de la taille de la mémoire tampon passée à l’API. Deux valeurs cbMax doivent être au moins ( 2 * sizeof( ULONG ) ).
|
JET_TblInfoTemplateTableName |
pvResult est interprété comme une mémoire tampon de chaîne. La mémoire tampon doit être au moins JET_cbNameMost + 1, y compris la valeur NULL de fin. Si la table est une table dérivée, la mémoire tampon est remplie avec le nom de la table à partir de laquelle la table dérivée a hérité de son DDL. Si la table n’est pas une table dérivée, la mémoire tampon est une chaîne vide. |
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_errBufferTooSmall |
La mémoire tampon était trop petite. |
JET_errFeatureNotAvailable |
Un InfoLevel déprécié a été spécifié. |
JET_errInvalidBufferSize |
La mémoire tampon n’était pas la bonne taille. |
JET_errInvalidOperation |
La table qui a été transmise était une table temporaire, et l’InfoLevel demandé ne peut pas être récupéré pour une table temporaire. |
JET_errObjectNotFound |
La table qui a été transmise était une table temporaire, et l’InfoLevel demandé ne peut pas être récupéré pour une table temporaire. |
JET_errQueryNotSupported |
InfoLevel n’est pas pris en charge. |
JET_errTableInUse |
La table est utilisée par une autre opération de base de données. |
JET_errTableLocked |
La table est verrouillée par une autre opération de base de données. |
JET_wrnTableInUseBySystem |
La table est utilisée par le système. Cet avertissement n’est pas mortel. |
Notes
Certaines informations ne sont pas valides pour les tables temporaires (voir JetOpenTempTable).
Les statistiques de table incluent le nombre d’enregistrements et le nombre de pages dans l’index cluster (autrement dit, l’index contenant les données d’enregistrement). Les statistiques d’index sont accessibles séparément par nom, à l’aide de JetGetIndexInfo ou JetGetTableIndexInfo.
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 JetGetTableInfoW (Unicode) et JetGetTableInfoA (ANSI). |
Voir aussi
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JetGetIndexInfo
JetGetObjectInfo
JetGetTableIndexInfo
JetOpenTempTable