共用方式為


JetSetSessionParameter 函式

適用于: Windows |Windows Server

JetSetSessionParameter函式會設定資料庫引擎。

JET_ERR JET_API JetSetSessionParameter (
  __in_opt      JET_SESID sesid,
  __in          unsigned long sesparamid,
  __in_read_bytes_opt_(cbParam)  void* pvParam,
  __in          unsigned long cbParam
);

參數

sesid

指定要用於這個呼叫的會話。

指定時,會忽略指定的實例,並使用與會話相關聯的實例。

sesparamid

要設定的會話參數識別碼。

pvParam

要在此會話參數中設定的資料。

cbParam

提供的資料大小。

傳回值

此函式會傳回具有下表所列其中一個傳回碼 的JET_ERR 資料類型。 如需可能的可延伸儲存引擎 (ESE) 錯誤的詳細資訊,請參閱 可延伸儲存引擎錯誤錯誤處理參數

傳回碼

Description

JET_errSuccess

作業已成功完成。

JET_errAlreadyInitialized

實例已使用 JetInit 函式的呼叫進行初始化,因此無法執行此作業。 當嘗試在參數值變更之後設定系統參數時,就可能不再影響資料庫引擎的狀態。

JET_errClientRequestToStopJetService

無法完成作業,因為與會話相關聯的實例上的所有活動都因為 JetStopService 函式的呼叫而停止。

JET_errIndexTuplesInvalidLimits

指定的 Tuple 索引參數不合法。 只有在 JET_paramIndexTuplesLengthMinJET_paramIndexTuplesLengthMaxJET_paramIndexTuplesToIndexMax 參數設定為不合法的值時,才會傳回此錯誤。 如需這些參數的相關資訊,請參閱 索引參數

JET_errInitInProgress

無法完成作業,因為正在初始化與會話相關聯的實例。

JET_errInstanceUnavailable

無法完成作業,因為與會話相關聯的實例發生嚴重錯誤,要求撤銷所有資料的存取權以保護該資料的完整性。

JET_errInvalidParameter

提供的其中一個參數包含非預期的值,或包含與另一個參數值結合時沒有意義的值。 當發生下列情況時,可能會發生這種情況:

  • 指定的系統參數識別碼無效或不受支援。

  • 嘗試設定字串值系統參數,其長度超出參數的法律範圍。

  • 嘗試使用檔案路徑設定字串值系統參數,其中其絕對路徑表示的長度超出該參數的法律範圍。

  • 嘗試設定整數值系統參數,其整數超出參數的法律範圍。

  • 嘗試使用 null JET_UNICODEINDEX 指標、不正確 LCID 或不支援的LCMapString旗標集來設定JET_paramUnicodeIndexDefault

  • 無法設定指定的系統參數,因為它是唯讀的。

  • 嘗試在呼叫 JetInit 函式之後設定系統參數、資料庫引擎處於單一實例模式,而且未指定會話。

  • 指定的系統參數是全域的,而且嘗試設定該系統參數的實例特定值。

  • 指定的系統參數僅供實例使用,並嘗試設定該系統參數的全域值。

JET_errInvalidPath

指定的檔案系統路徑無效。 只有在設定代表檔案系統路徑的系統參數時, JetSetSessionParameter 才會傳回此錯誤。 例如, JET_paramSystemPath 參數可能會傳回此錯誤。 如需此參數的相關資訊,請參閱 交易記錄參數

JET_errNotInitialized

無法完成作業,因為與會話相關聯的實例尚未初始化。

JET_errRestoreInProgress

因為與會話相關聯的實例上正在進行還原作業,所以無法完成作業。

JET_errTermInProgress

因為與會話相關聯的實例正在關閉,所以無法完成作業。

JET_errInvalidSesid

會話控制碼無效,或參考已關閉的會話。

在所有情況下都不會傳回此錯誤。 控制碼只會以最佳方式進行驗證。

JET_errInvalidInstance

實例控制碼無效,或參考已關閉的實例。

在所有情況下都不會傳回此錯誤。 控制碼只會以最佳方式進行驗證。

成功時,系統會將系統參數設定為所提供的值。

失敗時,系統參數值會保持不變。

規格需求

需求

用戶端

需要Windows 8。

Server

需要Windows Server 2012。

標頭

在 Esent.h 中宣告。

程式庫

使用 ESENT.lib。

Dll

需要ESENT.dll。

另請參閱

JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetGetSystemParameter
JetInit
系統參數