JetSetSystemParameter 関数
適用対象: Windows |Windows Server
JetSetSystemParameter 関数
JetSetSystemParameter 関数は、データベース エンジンの多数の構成設定を設定するために使用されます。
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
);
パラメーター
pinstance
この呼び出しに使用するインスタンスを指定します。
Windows 2000: Windows 2000 の場合、このパラメーターは無視され、常に NULL にする必要があります。
Windows XP: Windows XP 以降のリリースでは、このパラメーターは多少オーバーロードされています。 1 つのインスタンスのみがサポートされているレガシ モード (Windows 2000 互換モード) でエンジンが動作している場合、このパラメーターは NULL であるか、 JetInit によって返される実際のインスタンスを含む場合があります。 どちらの場合も、すべてのシステム パラメーター設定がその 1 つのインスタンスから読み取られます。 エンジンがマルチインスタンス モードで動作している場合、このパラメーターは NULL であるか、 JetInit または JetCreateIndex を使用して作成されたインスタンスへのポインターである可能性があります。 このパラメーターが NULL の 場合、グローバル システム パラメーター設定 (または既定) が読み取られます。 このパラメーターがインスタンスの場合、そのインスタンスのシステム パラメーター設定が読み取られます。
これは技術的には out パラメーターですが、この API は指定されたバッファーの内容を変更することはありません。
sesid
この呼び出しに使用するセッションを指定します。
指定すると、指定されたインスタンスは無視され、セッションに関連付けられているインスタンスが使用されます。
paramid
設定されるシステム パラメーターの ID。 システム パラメーターとそのプロパティの完全な一覧については、「システム パラメーター」を参照してください。
lParam
システム パラメーターが整数型の場合に、選択したシステム パラメーターに設定する値を提供します。
szParam
システム パラメーターが文字列型の場合は、選択したシステム パラメーターの値を提供します。
戻り値
この関数は、次のいずれかの戻りコードを 使用して、JET_ERR データ型を返します。 考えられる ESE エラーの詳細については、「 拡張ストレージ エンジン エラー と エラー処理パラメーター」を参照してください。
リターン コード |
説明 |
---|---|
JET_errSuccess |
操作は正常に完了しました。 Windows Vista: Windows Vista 以降のリリースでは、システム パラメーターの値を変更せずに成功を返すことができます。 詳細については、「 メタ パラメーター 」トピックの「システム パラメーターのJET_paramEnableAdvanced」を参照してください。 |
JET_errAlreadyInitialized |
インスタンスは JetInit の呼び出しを使用して初期化されており、この操作は結果として実行できません。 これは、値の変更がデータベース エンジンの状態に影響を与えることができない場合に、 JetSetSystemParameter でシステム パラメーターを構成しようとした場合に発生する可能性があります。 |
JET_errClientRequestToStopJetService |
JetStopService の呼び出しの結果、セッションに関連付けられたインスタンスのすべてのアクティビティが停止したため、操作を完了できません。 |
JET_errIndexTuplesInvalidLimits |
指定されたタプル インデックス パラメーターが無効でした。 このエラーは、JET_paramIndexTuplesLengthMin、JET_paramIndexTuplesLengthMax、またはJET_paramIndexTuplesToIndexMaxを無効な値に設定した場合にのみ、JetSetSystemParameter によって返されることがあります。 Windows XP および Windows Server 2003: これは、Windows XP と Windows Server 2003 でのみ発生します。 |
JET_errInitInProgress |
セッションに関連付けられているインスタンスが初期化されているため、操作を完了できません。 |
JET_errInstanceUnavailable |
セッションに関連付けられているインスタンスで、そのデータの整合性を保護するためにすべてのデータへのアクセスを取り消す必要がある致命的なエラーが発生したため、操作を完了できません。 Windows XP: このエラーは、Windows XP 以降のリリースでのみ返されます。 |
JET_errInvalidParameter |
指定されたパラメーターの 1 つに予期しない値が含まれていたか、別のパラメーターの値と組み合わせたときに意味のない値が含まれていました。 これは、次の場合に JetSetSystemParameter で 発生する可能性があります。
|
JET_errInvalidPath |
指定されたファイル システム パスが無効です。 このエラーは、ファイル システム パスを表すシステム パラメーターを設定する場合にのみ 、JetSetSystemParameter によって返される可能性があります。 たとえば、 JET_paramSystemPath はこのエラーを返す場合があります。 |
JET_errNotInitialized |
セッションに関連付けられているインスタンスがまだ初期化されていないため、操作を完了できません。 |
JET_errRestoreInProgress |
セッションに関連付けられているインスタンスで復元操作が進行中のため、操作を完了できません。 |
JET_errTermInProgress |
セッションに関連付けられているインスタンスがシャットダウンされているため、操作を完了できません。 |
JET_errInvalidSesid |
セッション ハンドルが無効であるか、閉じられたセッションを参照しています。 このエラーは、すべての状況で返されるわけではありません。 ハンドルはベスト エフォートベースでのみ検証されます。 |
JET_errInvalidInstance |
インスタンス ハンドルが無効であるか、シャットダウンされたインスタンスを参照しています。 このエラーは、すべての状況で返されるわけではありません。 ハンドルはベスト エフォートベースでのみ検証されます。 Windows Vista: このエラーは、Windows Vista 以降のリリースでのみ返されます。 |
成功すると、システム パラメーターの設定は指定された値に設定されます。
失敗した場合、システム パラメーターの設定は変更されません。
注釈
JetSetSystemParameter では、システム パラメーターごとに選択した設定を検証する処理が不十分です。 適切な設定を適用するには、この検証に依存しないように注意する必要があります。 各システム パラメーターの説明に細心の注意を払い、適切なシステム パラメーター設定については、これらのガイドラインに従ってください。
データベース エンジンが意図したとおりに動作することを保証するために、常に設定する必要があるシステム パラメーターのセットがあります。 具体的には、データベース エンジンによって使用されるファイルの物理レイアウトに影響を与えるシステム パラメーターは常に設定する必要があります。 詳細については、「 システム パラメーター」を参照してください。
すべてのシステム パラメーターには既定値があります。 これらの既定値は時間の経過と同時に進化しており、非常に任意です。 すべての既定値が適切であることを確認するために、アプリケーションですべての既定値を評価することを強くお勧めします。 適切でない場合は、アプリケーションによって構成する必要があります。 これらのパラメーターの多くは、データベース エンジンの信頼性、パフォーマンス、およびリソース使用率に大きな影響を与える可能性があり、これは重要です。
要件
要件 | 値 |
---|---|
Client |
Windows Vista、Windows XP、または Windows 2000 Professional が必要です。 |
[サーバー] |
Windows Server 2008、Windows Server 2003、または Windows 2000 Server が必要です。 |
Header |
Esent.h で宣言されています。 |
Library |
ESENT.lib を使用します。 |
[DLL] |
ESENT.dllが必要です。 |
Unicode |
JetSetSystemParameterW (Unicode) および JetSetSystemParameterA (ANSI) として実装されます。 |
参照
JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetGetSystemParameter
JetInit
システム パラメーター