JetTerm2 函式
適用于: Windows |Windows Server
JetTerm2 函式
JetTerm2函式會起始JetInit初始化之實例的關機。
JetTerm2 也可以終結 JetCreateInstance所建立的未初始化實例。
JET_ERR JET_API JetTerm2(
__in JET_INSTANCE instance,
__in JET_GRBIT grbit
);
參數
instance
要用於這個呼叫的 實例。
Windows 2000: 此參數會被忽略,而且一律為 Null。
Windows XP 和更新版本: 這個參數已多載。 如果引擎在舊版模式中運作 (Windows 2000 相容性模式) 僅支援一個實例,則此參數可能是 Null ,或可能包含 JetInit傳回的實際實例。 如果引擎是以多重實例模式運作,則此參數必須是使用 JetCreateInstance建立之實例的指標。
grbit
一組位,其中包含要用於這個呼叫的選項,其中包含下列零或多個值。
值 |
意義 |
---|---|
JET_bitTermComplete |
要求實例完全關閉。 通常會在執行時間在背景中完成的任何選擇性清除工作都會立即完成。 |
JET_bitTermAbrupt |
要求儘快關閉實例。 通常會在執行時間在背景中完成的任何選擇性工作都會被放棄。 注意 此選項可能會導致資料庫中的暫時或永久空間遺失。 此遺失的空間一律可以透過資料庫的離線重組進行復原。 |
JET_bitTermStopBackup |
要求即使目前有備份進行中,實例仍要關閉。 一般而言,擱置的備份會導致 JetTerm 因為JET_errBackupInProgress而失敗。 當此參數不存在時,其值會假設為JET_bitTermAbrupt。 |
JET_bitTermDirty |
要求實例關閉,且所有附加資料庫都處於已變更狀態。 Windows 7:windows 7 中引進JET_bitTermDirty。 |
傳回值
此函式會傳回具有下列其中一個傳回碼 的JET_ERR 資料類型。 如需可能 ESE 錯誤的詳細資訊,請參閱 可延伸的儲存引擎錯誤 和 錯誤處理參數。
傳回碼 |
Description |
---|---|
JET_errSuccess |
作業已成功完成。 |
JET_errBackupInProgress |
作業無法完成,因為實例上的備份作業正在進行中。 |
JET_errInvalidParameter |
提供的其中一個參數包含非預期的值,或數個參數的組合會產生非預期的結果。 當引擎處於多重實例模式,以及釘選參考不正確實例時,JetTerm會傳回此錯誤。 Windowsxp: 此傳回值會在 Windows XP 中引進。 |
JET_errNotInitialized |
作業無法完成,因為實例尚未初始化。 |
JET_errTermInProgress |
作業無法完成,因為實例正在關閉。 |
JET_errRestoreInProgress |
因為實例上的還原作業正在進行中,所以無法完成作業。 |
JET_errTooManyActiveUsers |
實例無法關閉,因為目前有具有指定實例作用中交易的會話。 只有在使用JET_bitTermComplete時,才會發生此錯誤。 |
如果此函式成功,則會關閉指定的實例。 實例控制碼也會關閉,並讓任何採用實例控制碼的 API 無法使用。 也會關閉與實例相關聯的所有其他物件,例如會話。 檢查點檔案、交易記錄檔和附加至實例的資料庫檔案狀態,將會在關機程式期間修改。
如果此函式因使用錯誤而失敗,則實例會維持初始化狀態,且不會有任何變更。 否則,實例仍會關閉為成功案例的狀態。 差異在於實例在下一次初始化時,必須經歷當機復原。 引擎會嘗試盡可能排清資料,以將所需的復原量降到最低。 在概念上, JetTerm 的這類失敗與進程當機不同。
備註
請參閱 JetTerm。
規格需求
需求 | 值 |
---|---|
用戶端 |
需要 Windows Vista、Windows XP 或 Windows 2000 Professional。 |
Server |
需要 Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。 |
標頭 |
在 Esent.h 中宣告。 |
程式庫 |
使用 ESENT.lib。 |
Dll |
需要ESENT.dll。 |
另請參閱
可延伸儲存引擎檔案
JetCreateInstance
JET_ERR
JET_GRBIT
JetInit
JET_INSTANCE
JetTerm