JetGetRecordSize2-Funktion

Gilt für: Windows | Windows Server

JetGetRecordSize2-Funktion

Die JetGetRecordSize2-Funktion ruft Datensatzgrößeninformationen vom gewünschten Speicherort ab.

Windows 7: JetGetRecordSize2 wird im Windows 7-Betriebssystem eingeführt.

    JET_ERR JET_API JetGetRecordSize2(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __out         JET_RECSIZE2* precsize,
      __in          const JET_GRBIT grbit
    );

Parameter

sesid

Identifiziert den Datenbanksitzungskontext, der für den API-Aufruf verwendet wird.

tableid

Identifiziert die Tabelle oder den Cursor, die bzw. der für den API-Aufruf verwendet wird. Der Cursor muss auf einem Datensatz positioniert sein oder ein Update vorbereitet haben.

precsize

Ein Zeiger auf einen Ausgabepuffer für die JET_RECSIZE2 Struktur.

grbit

Dies ist mindestens einer der folgenden Werte.

Wert

Bedeutung

JET_bitRecordSizeInCopyBuffer

Dadurch wird die Größe des Datensatzes abgerufen, der sich im für die Aktualisierung vorbereiteten Kopierpuffer befindet. Andernfalls muss die tableid oder der Cursor auf einem Datensatz positioniert werden, und dieser Datensatz wird verwendet.

JET_bitRecordSizeRunningTotal

Wenn dieses Bit angegeben wird, wird die JET_RECSIZE2 vor dem Auffüllen des Inhalts nicht 0 (null) festgelegt, was effektiv als Akkumulation der Statistiken für mehrere datensätze, die besucht oder aktualisiert werden, verwendet wird.

JET_bitRecordSizeLocal

Dies bewirkt, dass die API nicht systeminterne Long-Werte ignoriert. Beispielsweise wird nur der lokale Datensatz auf der Seite verwendet.

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_errInvalidGrbit

Eine der angeforderten Optionen war ungültig oder nicht implementiert. Dieser Fehler wird von der JetGetRecordSize2-Funktion zurückgegeben, wenn ein ungültiges Grbit angegeben wird.

JET_errNotInitialized

Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz nicht initialisiert wurde.

JET_errClientRequestToStopJetService

Es ist nicht möglich, den Vorgang abschließen, da alle Aktivitäten auf der -Instanz, die der Sitzung zugeordnet ist, aufgrund eines Aufrufs von JetStopService beendet wurden.

JET_errInstanceUnavailable

Der Vorgang kann nicht abgeschlossen werden, da für die der Sitzung zugeordnete Instanz ein schwerwiegender Fehler aufgetreten ist, der erfordert, dass der Zugriff auf alle Daten widerrufen wird, um die Integrität dieser Daten zu schützen.

Windows XP: JET_errInstanceUnavailable werden nur vom xp Windows xp-Betriebssystem und neueren Versionen von Windows.

JET_errTermInProgress

Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz heruntergefahren wird.

JET_errRestoreInProgress

Der Vorgang kann nicht abgeschlossen werden, da ein Wiederherstellungsvorgang für die -Instanz durchgeführt wird, die der Sitzung zugeordnet ist.

JET_errSessionSharingViolation

Es ist unzulässig, dieselbe Sitzung für mehrere Threads gleichzeitig zu verwenden.

Windows XP: JET_errInstanceUnavailable werden nur von Windows XP und neueren Versionen von Windows.

JET_errNoCurrentRecord

Dies kann passieren, wenn der Cursor falsch positioniert wurde.

JET_errRecordDeleted

Wenn der Cursor nicht in einer Transaktion positioniert wurde, kann dies passieren, wenn ein anderer Thread den Datensatz aus dieser Sitzung löscht.

JET_errInvalidParameter

Dies kann zurückgegeben werden, wenn eine NULL-Precsize übergeben wurde.

Hinweise

Die Größe des Schlüssels, der im cbOverhead-Feld von JET_RECSIZE2,wird von der JET_bitRecordSizeInCopyBuffer. Wenn dieses Bit angegeben wird, ist die im feld cbOverhead gesammelte Schlüsselgröße die vollständige Schlüsselgröße. Wenn dieses Bit nicht verwendet wird, enthält die akkumulierte Schlüsselgröße keine aufgrund der Schlüsselpräfixkomprimierung gespeicherte Größe.

Anforderungen

Anforderung Wert

Client

Erfordert Windows Vista.

Server

Erfordert Windows Server 2008.

Header

Wird in Esent.h deklariert.

Bibliothek

Verwenden Sie ESENT.lib.

DLL

Erfordert ESENT.dll.

Weitere Informationen

JET_ERR
JET_GRBIT
JET_RECSIZE
JET_SESID
JET_TABLEID