可延伸儲存體引擎錯誤

適用于:Windows |Windows伺服器

可延伸儲存體引擎錯誤

Extensible 儲存體 Engine (ESE) API 所傳回的所有可能錯誤都是由JET_ERR資料類型所定義。 如需為此 API 定義的錯誤旗標清單,請參閱可延伸儲存體引擎錯誤碼

在整個 ESE API 檔中,只會記錄最重要的錯誤。 這些錯誤通常代表 API 使用錯誤或非常重要的錯誤狀況。 請注意,這些 ESE API 中的任何一個也可以傳回未針對每個 API 記載的其他錯誤。 在這些情況下,呼叫端應該只處理錯誤,因為它們會處理 API 傳回的任何其他錯誤。 然後,特定錯誤值可用於診斷用途,例如追蹤。

一般而言,大於零的值應該解譯為警告、應該將零的值解譯為成功,而且小於零的值應該解譯為錯誤。 例如,這些值中沒有其他模式 (,應用程式應該依賴) 的值範圍。

當 ESE 遇到一些更嚴重的錯誤時,它會建立事件記錄檔專案,其中包含錯誤的詳細資料。 記錄層級可由 事件記錄參數控制。

某些應用程式需要將 JET_ERR傳回為 HRESULT 的能力。 下列 C++ 範例示範如何進行該轉換:

    #ifndef FACILITY_JET_ERR
    #define FACILITY_JET_ERR 0xE5E
    #endif
    #ifndef HRESULT_FROM_JET_ERR
    #define HRESULT_FROM_JET_ERR( __err )
    (
      ( __err ) == JET_errSuccess ?
      S_OK :
      (
        ( __err ) == JET_errOutOfMemory ?
        E_OUTOFMEMORY :
        MAKE_HRESULT
        (
          (
            ( __err ) < 0 ?
            SEVERITY_ERROR :
            SEVERITY_SUCCESS
          ),
          FACILITY_JET_ERR,
          (
            ( __err ) < 0 ?
            -( __err ) :
            ( __err )
          )
          & 0xFFFF
        )
      )
    )
    
    #endif

如需設定錯誤處理系統參數的相關資訊,請參閱 錯誤處理參數

另請參閱

錯誤處理參數

可延伸儲存體引擎錯誤碼

JET_ERR