JetGetRecordSize-Funktion
Gilt für: Windows | Windows Server
JetGetRecordSize-Funktion
Die JetGetRecordSize-Funktion ruft Informationen zur Datensatzgröße vom gewünschten Speicherort ab.
Windows Vista: JetGetRecordSize wurde in Windows Vista eingeführt.
JET_ERR JET_API JetGetRecordSize(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__out JET_RECSIZE* 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_RECSIZE-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 das Update vorbereiteten Kopierpuffer befindet. Andernfalls muss tableid oder cursor auf einem Datensatz positioniert werden, und dieser Datensatz wird verwendet. |
JET_bitRecordSizeRunningTotal |
Wenn dieses Bit angegeben wird, wird die JET_RECSIZE vor dem Auffüllen des Inhalts nicht auf null gesetzt, was effektiv als Ansammlung der Statistiken für mehrere Datensätze fungiert, die besucht oder aktualisiert wurden. |
JET_bitRecordSizeLocal |
Dies bewirkt, dass die API nicht systeminterne Lange 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 JetGetRecordSize-Funktion zurückgegeben, wenn ein ungültiges Grbit angegeben wird. |
JET_errNotInitialized |
Es ist nicht möglich, den Vorgang abzuschließen, da die der Sitzung zugeordnete Instanz nicht initialisiert wurde. |
JET_errClientRequestToStopJetService |
Es ist nicht möglich, den Vorgang abzuschließen, da alle Aktivitäten auf der Instanz, die der Sitzung zugeordnet ist, als Ergebnis eines Aufrufs von JetStopServiceaufgetreten sind. |
JET_errInstanceUnavailable |
Es ist nicht möglich, den Vorgang abzuschließen, da für die Instanz, die der Sitzung zugeordnet ist, 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 von Windows XP und späteren Versionen zurückgegeben. |
JET_errTermInProgress |
Es ist nicht möglich, den Vorgang abzuschließen, da die der Sitzung zugeordnete Instanz heruntergefahren wird. |
JET_errRestoreInProgress |
Es ist nicht möglich, den Vorgang abzuschließen, da ein Wiederherstellungsvorgang für die Instanz ausgeführt wird, die der Sitzung zugeordnet ist. |
JET_errSessionSharingViolation |
Es ist unzulässig, dieselbe Sitzung von mehreren Threads gleichzeitig zu verwenden. Windows XP: JET_errInstanceUnavailable werden nur von Windows XP und späteren Versionen zurückgegeben. |
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 unter dieser Sitzung löscht. |
JET_errInvalidParameter |
Dies kann zurückgegeben werden, wenn eineNULL-Präcsize übergeben wurde. |
Hinweise
Die Größe des Schlüssels, der sich im cbOverhead-Feld von JET_RECSIZEangesammelt hat, wird von JET_bitRecordSizeInCopyBuffer beeinflusst. Wenn dieses Bit angegeben wird, entspricht die im cbOverhead-Feld akkumulierte Schlüsselgröße der vollständigen Schlüsselgröße. Wenn dieses Bit nicht verwendet wird, enthält die akkumulierte Schlüsselgröße aufgrund der Schlüsselpräfixkomprimierung keine gespeicherte Größe.
Anforderungen
| Anforderung | Wert |
|---|---|
Client |
Erfordert Windows Vista. |
Server |
Erfordert Windows Server 2008. |
Header |
Deklariert in Esent.h. |
Bibliothek |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert ESENT.dll. |