共用方式為


JetBeginSession 函式

適用于: Windows |Windows Server

JetBeginSession 函式

JetBeginSession 函式會啟動會話,並初始化並傳回 ESE 會話控制碼 (JET_SESID) 。 會話會控制資料庫的所有存取權,並用來控制交易的範圍。 會話可用來開始、認可或中止交易。 會話也可用來附加、建立或開啟資料庫。 會話會當做所有 DDL 和 DML 作業的內容使用。 若要增加資料庫的並行和平行存取,可以開始多個會話。

    JET_ERR JET_API JetBeginSession(
      __in          JET_INSTANCE instance,
      __out         JET_SESID* psesid,
      __in_opt      JET_PCSTR szUserName,
      __in_opt      JET_PCSTR szPassword
    );

參數

instance

要用於這個呼叫的資料庫實例。

psesid

會話在成功傳回時初始化的變數指標。

szUserName

此參數已保留備用。

szPassword

此參數已保留備用。

傳回值

此函式允許傳回此 API 中定義的任何 JET_ERR。 如需 Jet 錯誤的詳細資訊,請參閱 可延伸儲存引擎錯誤錯誤處理參數

傳回碼

Description

JET_errSuccess

作業已成功完成。

JET_errClientRequestToStopJetService

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

JET_errInstanceUnavailable

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

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

JET_errInvalidParameter

提供的其中一個參數包含非預期的值,或包含與另一個參數的值結合時沒有意義的值。

JET_errNotInitialized

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

JET_errOutOfMemory

作業失敗,因為無法配置記憶體。

JET_errOutOfSessions

引擎將允許用戶端啟動的會話數目有限。 您可以使用 JetSetSystemParameter 搭配 JET_paramMaxSessions 常數來變更此值。 會話的預設數目為 16。 如需JET_paramMaxSessions的詳細資訊,請參閱 系統參數

JET_errRestoreInProgress

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

JET_errTermInProgress

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

成功時,會話控制碼會初始化,而且可用於資料庫作業。

失敗時,沒有可用的會話,或無法初始化新的會話。

備註

在跨不同執行緒使用會話時,必須謹慎注意。 會話會追蹤 在 JetBeginTransactionJetCommitTransactionJetRollback期間所使用的執行緒,如果在具有開啟交易的多個執行緒上使用,則會擲回錯誤。 JetResetSessionCoNtextJetSetSessionCoNtext可以變更此行為。 由於會話仍是序列化的內容,因此無法在單一會話上同時執行多個資料庫作業,而只能以序列方式執行。 不過,您可以使用多個會話來達到並行資料庫存取。 會話可以透過設定和重設會話內容,在跨執行緒的交易內使用。

會話控制碼應該使用 JetEndSession關閉。

規格需求

需求

用戶端

需要 Windows Vista、Windows XP 或 Windows 2000 Professional。

Server

需要 Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。

標頭

在 Esent.h 中宣告。

程式庫

使用 ESENT.lib。

Dll

需要ESENT.dll。

Unicode

實作為 JetBeginSessionW (Unicode) 和 JetBeginSessionA (ANSI) 。

另請參閱

JET_ERR
JET_INSTANCE
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetDupSession
JetEndSession
JetResetSessionCoNtext
JetRollback
JetSetSessionCoNtext
JetStopService
系統參數