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 erhält. 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 in Bytes, der in pvResult übergeben wurde.

InfoLevel

Der Typ der Informationen, die für die Tabelle abgerufen werden, die durch tableid angegeben wird. Das Format der in pvResult gespeicherten Daten hängt von InfoLevel ab.

Für diesen Parameter können die folgenden Optionen festgelegt werden:

Wert

Bedeutung

JET_TblInfo

pvResult wird als eine JET_OBJECTINFO interpretiert. Wenn die Methode erfolgreich ist, wird JET_OBJECTINFO Struktur mit den entsprechenden Daten gefüllt. Wenn ein Fehler auftritt, ist der Inhalt nicht definiert.

JET_TblInfoDbid

pvResult wird als Array von zwei JET_DBID 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.

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.

JET_TblInfoRvt

JET_TblInfoRvt ist veraltet. Die API gibt JET_errQueryNotSupported.

JET_TblInfoResetOLC

JET_TblInfoResetOLC ist veraltet. Die API gibt JET_errFeatureNotAvailable.

JET_TblInfoSpaceAlloc

pvResult wird als Array von zwei ULONGs interpretiert:

  • Die erste ULONG ist die Anzahl der Seiten in der Tabelle.

  • Die zweite ULONG ist die Zieldichte der Seiten für die Tabelle.

JET_TblInfoSpaceAvailable

pvResult wird als ULONG interpretiert. Der ULONG-Wert ist die Summe der Anzahl der in der Tabelle verfügbaren Seiten, ihrer Indizes und der Long-Value-Struktur.

JET_TblInfoSpaceOwned

pvResult wird als ULONG interpretiert. Der ULONG-Wert ist die Summe der Anzahl der Seiten, die sich im Besitz der Tabelle befinden (einschließlich der Indizes, der Long-Value-Struktur und aller 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.

  • Wenn cbMax ist ( 2 * sizeof( ULONG ) ), wird pvResult als Array von zwei ULONGs interpretiert:

    • Die erste ULONG ist die Anzahl der eigenen Extents der Tabelle.

    • Das zweite ULONG ist die Anzahl der verfügbaren Extents der Tabelle.

  • pvResult wird als Array von interpretiert:

    • Die erste ULONG ist die Anzahl der eigenen Extents der Tabelle.

    • Das zweite ULONG ist die Anzahl der verfügbaren Extents der Tabelle.

JET_TblInfoTemplateTableName

pvResult wird als Zeichenfolgenpuffer interpretiert. Der Puffer muss mindestens JET_cbNameMost + 1 sein, einschließlich des beendenden NULL-Werts. Wenn es sich bei der Tabelle um eine abgeleitete Tabelle handelt, wird der Puffer mit dem Namen der Tabelle gefüllt, von der die abgeleitete Tabelle ihre DDL geerbt hat. Wenn die Tabelle keine abgeleitete Tabelle ist, ist der Puffer eine leere Zeichenfolge.

Rückgabewert

Diese Funktion gibt den JET_ERR datentyp mit einem der folgenden Rückgabecodes zurück. Weitere Informationen zu den möglichen ESE-Fehlern finden Sie unter Extensible Storage Engine Errors and Error Handling Parameters.

Rückgabecode

Beschreibung

JET_errSuccess

Der Vorgang wurde erfolgreich abgeschlossen.

JET_errBufferTooSmall

Der Puffer war zu klein.

JET_errFeatureNotAvailable

Ein veraltetes InfoLevel wurde angegeben.

JET_errInvalidBufferSize

Der Puffer hat 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 nichtfatal.

Bemerkungen

Einige Informationen sind für temporäre Tabellen ungültig (siehe JetOpenTempTable).

Die Tabellenstatistiken enthalten die Anzahl von Datensätzen und die Anzahl der Seiten im gruppierten Index (d.amp;n.b. der Index, der die Datensatzdaten enthält). Auf die Indexstatistiken wird mit jetGetIndexInfo oder JetGetTableIndexInfoseparat anhand des Namens zugegriffen.

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.

Header

Deklariert in Esent.h.

Bibliothek

Verwenden Sie ESENT.lib.

DLL

Erfordert ESENT.dll.

Unicode

Wird als JetGetTableInfoW (Unicode) und JetGetTableInfoA (ANSI) implementiert.

Weitere Informationen

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JetGetIndexInfo
JetGetObjectInfo
JetGetTableIndexInfo
JetOpenTempTable