JetGetTableInfo-Funktion
Gilt für: Windows | Windows Server
JetGetTableInfo-Funktion
Die JetGetTableInfo-Funktion ruft verschiedene Informationen zu einer Tabelle in einer Datenbank ab.
JET_ERR JET_API JetGetTableInfo(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__out void* pvResult,
__in unsigned long cbMax,
__in unsigned long InfoLevel
);
Parameter
sesid
Der Datenbanksitzungskontext, der für den API-Aufruf verwendet werden soll.
tableid
Die Tabelle, für die die Informationen gelten.
pvResult
Zeiger auf einen Puffer, der die Informationen empfängt. Der Typ des Puffers ist von InfoLevel abhängig. Es liegt in der Verantwortung des Aufrufers, den Puffer entsprechend auszurichten.
cbMax
Die Größe des Puffers, der in pvResult übergeben wurde, in Bytes.
InfoLevel
Der Typ der Informationen, die für die Tabelle abgerufen werden, die durch tableid angegeben wird. Das Format der in pvResult gespeicherten Daten ist von InfoLevel abhängig.
Für diesen Parameter können die folgenden Optionen festgelegt werden:
Wert |
Bedeutung |
---|---|
JET_TblInfo |
pvResult wird als JET_OBJECTINFO-Struktur interpretiert. Wenn die Methode erfolgreich ist, wird die JET_OBJECTINFO-Struktur mit den entsprechenden Daten ausgefüllt. Wenn ein Fehler auftritt, ist der Inhalt nicht definiert. |
JET_TblInfoDbid |
pvResult wird als Array von zwei JET_DBID-Objekten behandelt. Der Datenbankbezeichner der Datenbank, die die Tabelle besitzt, wird zweimal in diesem Array gespeichert. |
JET_TblInfoDumpTable |
JET_TblInfoDumpTable ist veraltet. Die API gibt JET_errFeatureNotAvailable zurück. |
JET_TblInfoName |
JET_TblInfoName ruft den Namen der Tabelle ab und speichert ihn in pvResult. Wenn der Puffer zu klein ist, ist das Verhalten nicht definiert. |
JET_TblInfoMostMany |
JET_TblInfoMostMany ruft den Namen der Tabelle ab und speichert ihn in pvResult. Wenn der Puffer zu klein ist, ist das Verhalten nicht definiert. |
JET_TblInfoOLC |
JET_TblInfoOLC ist veraltet. Die API gibt JET_errFeatureNotAvailable zurück. |
JET_TblInfoRvt |
JET_TblInfoRvt ist veraltet. Die API gibt JET_errQueryNotSupported zurück. |
JET_TblInfoResetOLC |
JET_TblInfoResetOLC ist veraltet. Die API gibt JET_errFeatureNotAvailable zurück. |
JET_TblInfoSpaceAlloc |
pvResult wird als Array von zwei ULONGs interpretiert:
|
JET_TblInfoSpaceAvailable |
pvResult wird als ULONG interpretiert. Die ULONG ist die Summe der Anzahl von Seiten, die in der Tabelle verfügbar sind, deren Indizes und der Struktur für lange Werte. |
JET_TblInfoSpaceOwned |
pvResult wird als ULONG interpretiert. Die ULONG ist die Summe der Anzahl der Seiten, die sich im Besitz der Tabelle befinden (einschließlich ihrer Indizes, der Struktur für lange Werte und aller darin verfügbaren Seiten). |
JET_TblInfoSpaceUsage |
Das Verhalten der API hängt davon ab, wie groß der Puffer ist, der an die API übergeben wird. Zwei cbMax-Werte müssen mindestens ( 2 * sizeof( ULONG ) sein.
|
JET_TblInfoTemplateTableName |
pvResult wird als Zeichenfolgenpuffer interpretiert. Der Puffer muss mindestens JET_cbNameMost + 1 sein, einschließlich des beendenden NULL. Wenn es sich bei der Tabelle um eine abgeleitete Tabelle handelt, wird der Puffer mit dem Namen der Tabelle ausgefüllt, von der die abgeleitete Tabelle ihre DDL geerbt hat. Wenn es sich bei der Tabelle nicht um eine abgeleitete Tabelle handelt, wird der Puffer als leere Zeichenfolge verwendet. |
Rückgabewert
Diese Funktion gibt den Datentyp JET_ERR mit einem der folgenden Rückgabecodes zurück. Weitere Informationen zu möglichen ESE-Fehlern finden Sie unter Erweiterbare Speichermodulfehler und Fehlerbehandlungsparameter.
Rückgabecode |
Beschreibung |
---|---|
JET_errSuccess |
Der Vorgang wurde erfolgreich abgeschlossen. |
JET_errBufferTooSmall |
Der Puffer war zu klein. |
JET_errFeatureNotAvailable |
Es wurde ein veralteter InfoLevel-Wert angegeben. |
JET_errInvalidBufferSize |
Der Puffer hatte nicht die richtige Größe. |
JET_errInvalidOperation |
Die übergebene Tabelle war eine temporäre Tabelle, und der angeforderte InfoLevel kann nicht für eine temporäre Tabelle abgerufen werden. |
JET_errObjectNotFound |
Die übergebene Tabelle war eine temporäre Tabelle, und der angeforderte InfoLevel kann nicht für eine temporäre Tabelle abgerufen werden. |
JET_errQueryNotSupported |
InfoLevel wird nicht unterstützt. |
JET_errTableInUse |
Die Tabelle wird von einem anderen Datenbankvorgang verwendet. |
JET_errTableLocked |
Die Tabelle wird durch einen anderen Datenbankvorgang gesperrt. |
JET_wrnTableInUseBySystem |
Die Tabelle wird vom System verwendet. Diese Warnung ist nicht schwerwiegender Wert. |
Bemerkungen
Einige Informationen sind für temporäre Tabellen ungültig (siehe JetOpenTempTable).
Die Tabellenstatistik umfasst die Anzahl der Datensätze und die Anzahl der Seiten im gruppierten Index (d. a. den Index, der die Datensatzdaten enthält). Der Zugriff auf die Indexstatistiken erfolgt separat über den Namen mithilfe von JetGetIndexInfo oder JetGetTableIndexInfo.
Anforderungen
Anforderung | Wert |
---|---|
Client |
Erfordert Windows Vista, Windows XP oder Windows 2000 Professional. |
Server |
Erfordert Windows Server 2008, Windows Server 2003 oder Windows 2000 Server. |
Kopfzeile |
Deklariert in Esent.h. |
Bibliothek |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert ESENT.dll. |
Unicode |
Implementiert als JetGetTableInfoW (Unicode) und JetGetTableInfoA (ANSI). |
Weitere Informationen
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JetGetIndexInfo
JetGetObjectInfo
JetGetTableIndexInfo
JetOpenTempTable