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:
|
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.
|
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