JetSetSystemParameter-Funktion
Gilt für: Windows | Windows Server
JetSetSystemParameter-Funktion
Mit der JetSetSystemParameter-Funktion werden die zahlreichen Konfigurationseinstellungen der Datenbank-Engine festgelegt.
JET_ERR JET_API JetSetSystemParameter(
__in_out_opt JET_INSTANCE* pinstance,
__in JET_SESID sesid,
__in unsigned long paramid,
__in JET_API_PTR lParam,
__in_opt JET_PCSTR szParam
);
Parameter
Pinstance
Gibt die -Instanz an, die für diesen Aufruf verwendet werden soll.
Windows 2000: Für Windows 2000 wird dieser Parameter ignoriert und sollte immer NULL sein.
Windows XP: Für Windows XP und spätere Versionen ist dieser Parameter etwas überladen. Wenn die Engine im Legacymodus (Windows 2000-Kompatibilitätsmodus) ausgeführt wird, in dem nur eine Instanz unterstützt wird, kann dieser Parameter NULL sein oder die tatsächliche Instanz enthalten, die von JetInitzurückgegeben wird. In beiden Fällen werden alle Systemparametereinstellungen aus dieser einen Instanz gelesen. Wenn die Engine im Modus mit mehreren Instanzen ausgeführt wird, kann dieser Parameter NULL oder ein Zeiger auf eine Instanz sein, die mit JetInit oder JetCreateIndex erstellt wurde. Wenn dieser Parameter NULL ist, wird die globale Systemparametereinstellung (oder der Standardwert) gelesen. Wenn dieser Parameter eine -Instanz ist, wird die Systemparametereinstellung für diese Instanz gelesen.
Obwohl dies technisch gesehen ein out-Parameter ist, ändert diese API nie den Inhalt des bereitgestellten Puffers.
sesid
Gibt die Sitzung an, die für diesen Aufruf verwendet werden soll.
Wenn angegeben, wird die angegebene -Instanz ignoriert, und die der Sitzung zugeordnete -Instanz wird verwendet.
paramid
Die ID des Systemparameters, der festgelegt wird. Eine vollständige Liste der Systemparameter und deren Eigenschaften finden Sie unter Systemparameter.
lParam
Gibt den Wert an, der für den ausgewählten Systemparameter festgelegt werden soll, wenn dieser Systemparameter einen ganzzahligen Typ auf hat.
szParam
Gibt den Wert für den ausgewählten Systemparameter an, wenn dieser Systemparameter einen Zeichenfolgentyp auf hat.
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. Windows Vista: In Windows Vista und späteren Versionen kann der Erfolg ohne Änderung des Werts des Systemparameters zurückgegeben werden. Weitere Informationen finden JET_paramEnableAdvanced im Thema Metaparameter im Thema "Systemparameter". |
JET_errAlreadyInitialized |
Die -Instanz wurde mithilfe eines Aufrufs von JetInit initialisiert, und dieser Vorgang kann daher nicht ausgeführt werden. Dies kann bei JetSetSystemParameter der Fall sein, wenn versucht wird, einen Systemparameter zu konfigurieren, nachdem sich eine Änderung des Werts nicht auf den Zustand der Datenbank-Engine auswirken kann. |
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_errIndexTuplesInvalidLimits |
Die angegebenen Tupelindexparameter waren ungültig. Dieser Fehler kann nur von JetSetSystemParameter zurückgegeben werden, wenn JET_paramIndexTuplesLengthMin , JET_paramIndexTuplesLengthMaxoder JET_paramIndexTuplesToIndexMax auf einen ungültigen Wert festgelegt wird. Windows XP und Windows Server 2003: Dies kann nur auf Windows XP und Windows Server 2003 geschehen. |
JET_errInitInProgress |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz initialisiert wird. |
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: Dieser Fehler wird nur von xp Windows und späteren Versionen zurückgegeben. |
JET_errInvalidParameter |
Einer der bereitgestellten Parameter enthielt einen unerwarteten Wert oder einen Wert, der in Kombination mit dem Wert eines anderen Parameters nicht sinnvoll war. Dies kann für JetSetSystemParameter der Fall sein, wenn:
|
JET_errInvalidPath |
Der angegebene Dateisystempfad war ungültig. Dieser Fehler kann nur von JetSetSystemParameter zurückgegeben werden, wenn Systemparameter festgelegt werden, die Dateisystempfade darstellen. Beispielsweise kann JET_paramSystemPath Fehler zurückgeben. |
JET_errNotInitialized |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz noch nicht initialisiert wurde. |
JET_errRestoreInProgress |
Der Vorgang kann nicht abgeschlossen werden, da ein Wiederherstellungsvorgang für die -Instanz durchgeführt wird, die der Sitzung zugeordnet ist. |
JET_errTermInProgress |
Der Vorgang kann nicht abgeschlossen werden, da die der Sitzung zugeordnete Instanz heruntergefahren wird. |
JET_errInvalidSesid |
Das Sitzungshandy ist ungültig oder verweist auf eine geschlossene Sitzung. Dieser Fehler wird nicht unter allen Umständen zurückgegeben. Handles werden nur nach bestem Aufwand überprüft. |
JET_errInvalidInstance |
Das Instanzhand handle ist ungültig oder verweist auf eine Instanz, die heruntergefahren wurde. Dieser Fehler wird nicht unter allen Umständen zurückgegeben. Handles werden nur nach bestem Aufwand überprüft. Windows Vista: Dieser Fehler wird nur von Windows Vista und späteren Versionen zurückgegeben. |
Bei Erfolg wird die Einstellung für den Systemparameter auf den angegebenen Wert festgelegt.
Bei einem Fehler bleibt die Einstellung für den Systemparameter unverändert.
Bemerkungen
JetSetSystemParameter führt eine schlechte Validierung der ausgewählten Einstellung für jeden Systemparameter durch. Es muss darauf achten, dass sie sich nicht auf diese Überprüfung verlassen, um gute Einstellungen zu erzwingen. Achten Sie besonders auf die Beschreibung der einzelnen Systemparameter, und befolgen Sie diese Richtlinien, um eine gute Systemparametereinstellung zu erhalten.
Es gibt eine Reihe von Systemparametern, die immer festgelegt werden sollten, um zu gewährleisten, dass die Datenbank-Engine wie vorgesehen funktioniert. Insbesondere sollten alle Systemparameter, die sich auf das physische Layout der von der Datenbank-Engine verwendeten Dateien auswirken, immer festgelegt werden. Weitere Informationen finden Sie unter Systemparameter.
Jeder Systemparameter hat einen Standardwert. Diese Standardwerte haben sich im Laufe der Zeit weiterentwickelt und sind recht willkürlich. Es wird dringend empfohlen, dass eine Anwendung alle Standardwerte auswertet, um sicherzustellen, dass sie geeignet sind. Wenn sie nicht geeignet sind, sollten sie von der Anwendung konfiguriert werden. Dies ist wichtig, da viele dieser Parameter die Zuverlässigkeit, Leistung und Ressourcenauslastung der Datenbank-Engine stark beeinträchtigen können.
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 |
Implementiert als JetSetSystemParameterW (Unicode) und JetSetSystemParameterA (ANSI). |
Weitere Informationen
JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetGetSystemParameter
JetInit
Systemparameter