JetGetLS 函式

適用于:Windows |Windows伺服器

JetGetLS 函式

JetGetLS函式可讓應用程式擷取與資料指標相關聯的本機儲存體內容控制碼,或與該資料指標相關聯的資料表。 先前必須使用 JetSetLS來設定此內容控制碼。 JetGetLS 也可以用來同時擷取游標或資料表的目前內容控制碼,並重設該內容控制碼。

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

    JET_ERR JET_API JetGetLS(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __out         JET_LS* pls,
      __in          JET_GRBIT grbit
    );

參數

sesid

要用於這個呼叫的會話。

tableid

要用於這個呼叫的資料指標。

pls

輸出緩衝區,接收目前與資料指標或資料表相關聯的內容控制碼。

grbit

指定下列零個或多個選項的位群組。

意義

JET_bitLSCursor

表示應該擷取與指定資料指標相關聯的內容控制碼。

如果未指定JET_bitLSCursor或JET_bitLSTable,則假設JET_bitLSCursor。

此選項不能與 JET_bitLSTable搭配使用。 如果嘗試此作業,作業將會失敗,JET_errInvalidgrbit。

JET_bitLSTable

表示應該擷取與包含指定資料指標之資料表相關聯的內容控制碼。 搭配使用此選項與JET_bitLSCursor不合法。 如果嘗試此作業,作業將會失敗,JET_errInvalidgrbit。

JET_bitLSReset

指出所選物件的內容控制碼應該重設為JET_LSNil。 內容控制碼的目前值會在輸出緩衝區中傳回。

傳回值

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

傳回碼

Description

JET_errSuccess

作業已成功完成。

JET_errClientRequestToStopJetService

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

JET_errInstanceUnavailable

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

此錯誤只會由Windows XP 和更新版本傳回。

JET_errInvalidgrbit

要求的其中一個選項無效、以不合法的方式使用,或未實作。

設定JET_bitLSCursor和JET_bitLSTable時, JetGetLS 可能會發生這種情況。

JET_errLSNotSet

無法傳回內容控制碼,因為目前沒有任何內容控制碼與要求的物件相關聯。

注意 如果JET_bitLSReset尚未指定任何內容控制碼與要求的物件相關聯,則不會傳回此錯誤。

JET_errNotInitialized

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

JET_errRestoreInProgress

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

JET_errTermInProgress

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

成功時,內容控制碼已成功從要求的物件擷取。 如果已指定JET_bitLSReset,則該內容控制碼也已成功從 物件中移除。 不會變更資料庫狀態。

失敗時,不會變更所要求物件的狀態。 不會變更資料庫狀態。

規格需求

需求

用戶端

需要Windows Vista 或 Windows XP。

Server

需要 Windows Server 2008 或 Windows Server 2003。

標頭

在 Esent.h 中宣告。

程式庫

使用 ESENT.lib。

DLL

需要ESENT.dll。

另請參閱

JET_ERR
JET_GRBIT
JET_LS
JET_SESID
JET_TABLEID
JetSetLS