共用方式為


JetTruncateLogInstance 函式

適用于: Windows |Windows Server

JetTruncateLogInstance 函式

JetTruncateLogInstance函式會在JetBeginExternalBackup起始的備份期間使用,以刪除目前備份成功完成之後不再需要的任何交易記錄檔。

Windows XP:JetTruncateLogInstance 是在 Windows XP 中引進。

    JET_ERR JET_API JetTruncateLogInstance(
      __in          JET_INSTANCE instance
    );

參數

instance

要用於這個呼叫的 實例。

對於 Windows 2000,無法使用接受此參數的 API 變體,因為只支援一個實例。 在此情況下,會隱含使用此一個全域實例。

針對 Windows XP 和更新版本,只有在引擎處於舊版模式時,才能呼叫不接受此參數的 API 變體, (Windows 2000 相容性模式) 只支援一個實例。 否則,作業將會因為JET_errRunningInMultiInstanceMode而失敗。

傳回值

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

傳回碼

Description

JET_errSuccess

作業已成功完成。

JET_errBackupAbortByServer

Windows Server 2003: 這個傳回值是在 Windows Server 2003 中引進。

作業失敗,因為對 JetStopBackup的呼叫已中止目前的外部備份。

JET_errClientRequestToStopJetService

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

JET_errInstanceUnavailable

作業無法完成,因為與會話相關聯的實例發生嚴重錯誤,需要撤銷所有資料的存取權,以保護該資料的完整性。 此錯誤只會由 Windows XP 和更新版本傳回。

JET_errInvalidBackupSequence

備份作業失敗,因為它已依序呼叫。 如果針對 實例使用JetOpenFile建立的任何未處理檔案控制代碼,JetTruncateLog將會傳回此錯誤。

JET_errInvalidParameter

提供的其中一個參數包含非預期的值,或數個參數的組合會產生非預期的結果。 當指定的實例控制碼無效時, JetTruncateLog 可能會發生這種情況。

JET_errNoBackup

作業失敗,因為沒有任何外部備份正在進行中。

JET_errNotInitialized

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

JET_errRestoreInProgress

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

JET_errRunningInMultiInstanceMode

作業失敗,因為嘗試在舊版模式中使用引擎, (Windows 2000 相容性模式) 實際上已存在多個實例時,只支援一個實例。

JET_errTermInProgress

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

如果此函式成功,一旦目前的備份順利完成,就不再需要的交易記錄檔集。 備份狀態機器將會是進階的,因此不再允許備份資料庫檔案。 只允許開啟資料庫修補程式檔案和交易記錄檔,以便在此時間點之後進行備份。

如果此函式失敗,備份狀態機器可以進階,讓不再允許備份資料庫檔案。 某些數目的交易記錄檔可能會刪除小於所需數目,但一律會從最舊到最舊刪除。

規格需求

需求

用戶端

需要 Windows Vista 或 Windows XP。

Server

需要 Windows Server 2008 或 Windows Server 2003。

標頭

在 Esent.h 中宣告。

程式庫

使用 ESENT.lib。

Dll

需要ESENT.dll。

另請參閱

可延伸儲存引擎檔案
JET_ERR
JET_INSTANCE
JetBeginExternalBackup
JetOpenFile
JetStopBackup
JetStopService