JetSetDatabaseSize-Funktion

Gilt für: Windows | Windows Server

JetSetDatabaseSize-Funktion

Die JetSetDatabaseSize-Funktion legt die Größe einer nicht geöffneten Datenbankdatei fest.

    JET_ERR JET_API JetSetDatabaseSize(
      __in          JET_SESID sesid,
      __in          JET_PCSTR szDatabaseName,
      __in          unsigned long cpg,
      __out         unsigned long* pcpgReal
    );

Parameter

sesid

Gibt den Datenbanksitzungskontext an, der für den API-Aufruf verwendet werden soll.

szDatabaseName

Gibt den Namen der Datenbankdatei an, deren Größe geändert werden soll.

Cpg

Gibt die gewünschte Größe der Datenbank in Seiten an.

pcpgReal

Zeiger auf eine Zahl, die die Größe der Datenbank in Seiten nach dem API-Aufruf empfängt. Wenn der API-Aufruf nicht erfolgreich war, werden die Inhalte von pcpgReal nicht definiert.

Rückgabewert

Diese Funktion gibt den datentyp JET_ERR mit einem der folgenden Rückgabecodes zurück. Weitere Informationen zu den möglichen ESE-Fehlern finden Sie unter Erweiterbarkeit Storage Modulfehler und Fehlerbehandlungsparameter.

Rückgabecode

Beschreibung

JET_errSuccess

Der Vorgang wurde erfolgreich abgeschlossen.

JET_errDatabaseInconsistent
JET_errDatabaseDirtyShutdown

JET_errDatabaseInconsistent und JET_errDatabaseDirtyShutdown sind derselbe numerische Wert. Die Datenbank, deren Größe angepasst werden soll, muss sich in einem sauberen Herunterfahren befinden, der als konsistenter Zustand bezeichnet wird. Eine inkonsistente Datenbank ist nicht beschädigt, erfordert jedoch die Wiedergabe von Protokolldateien.

JET_errDatabaseInvalidPath

szDatabaseName darf keine leere, nicht NULL-Zeichenfolge sein.

JET_errDiskFull

Es ist nicht genügend freier Speicherplatz auf dem Volume vorhanden, um den Wachstumsvorgang auszuführen. JetSetDatabaseSize kann auch viele dateibezogene Fehler zurückgeben, einschließlich, aber nicht beschränkt auf:

  • JET_errDiskIO

  • JET_errFileNotFound

  • JET_errInvalidPath

  • JET_errFileAccessDenied

  • JET_errOutOfFileHandles

JET_errInvalidParameter

Einer der Gründe, aus dem dieser Fehler zurückgegeben werden kann, ist, wenn cpg die mindeste Datenbankgröße erfüllt. Die aktuelle Mindestdatenbankgröße beträgt 256 Seiten.

JET_errOutOfMemory

Das System ist auf Speicherressourcen niedrig.

Hinweise

Wenn JetSetDatabaseSize vor dem Einfügen großer Datenmengen aufgerufen wird, wird die Datenbankdatei in einem Vorgang vergrößert. Dadurch wird die Wahrscheinlichkeit verringert, dass die Datenbankdatei auf Der Dateisystemebene fragmentiert wird, und auch die Anzahl der Zeiten, in denen die Datenbankdatei vergrößert werden muss. Das Wachstum der Datenbankdatei kann einmal schneller sein, als sie mehrmals zu wachsen.

Nur das Wachstum der Datei wird derzeit unterstützt. Verwenden Sie zum Verkleinern einer Datei das Defragmentierungsfeature des esentutl.exe Hilfsprogramms.

Wenn cpg kleiner als die aktuelle Größe der Datenbank ist, wird der Vorgang ignoriert. Wenn cpg kleiner als die mindeste Datenbankgröße (derzeit 256 Seiten) ist, wird JET_errInvalidParameter zurückgegeben.

Informationen zum Festlegen der Größe einer geöffneten Datenbank finden Sie unter JetGrowDatabase.

Die Dateigröße stimmt möglicherweise nicht mit der Anzahl der seiten überein, die in pcpgReal zurückgegeben werden. Es gibt zwei zusätzliche reservierte Seiten, die möglicherweise nicht in pcpgReal gezählt werden.

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 JetSetDatabaseSizeW (Unicode) und JetSetDatabaseSizeA (ANSI).

Weitere Informationen

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_OBJECTINFO
JET_OBJECTLIST
JetGrowDatabase