共用方式為


JetOpenDatabase 函式

適用于: Windows |Windows Server

JetOpenDatabase 函式

JetOpenDatabase函式會使用JetAttachDatabaseJetAttachDatabase2函式開啟先前附加的資料庫,以便與資料庫會話搭配使用。 同一個資料庫可以多次呼叫此函式。

    JET_ERR JET_API JetOpenDatabase(
      __in          JET_SESID sesid,
      __in          const tchar* szFilename,
      __in_opt      const tchar* szConnect,
      __out         JET_DBID* pdbid,
      __in          JET_GRBIT grbit
    );

參數

sesid

要用於 API 呼叫的資料庫會話內容。

szFilename

要開啟的資料庫名稱。

szConnect

保留的。 設定為 NULL。

pdbid

在成功呼叫時,緩衝區的指標包含資料庫的識別碼。 如果呼叫失敗,則此值為未定義。

grbit

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

意義

JET_bitDbExclusive

只允許單一會話附加資料庫。 一般而言,數個會話可以開啟資料庫。

JET_bitDbReadOnly

防止修改資料庫。

傳回值

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

傳回碼

Description

JET_errSuccess

作業已成功完成。

JET_errDatabaseInUse

已要求獨佔存取權,但無法授與。

JET_errDatabaseInvalidPath

szFilename中提供了不正確路徑。 szFilename 必須是非 Null,並參考有效的檔案。

JET_errDatabaseLocked

另一個會話已經使用 JET_bitDbExclusive) 獨佔方式開啟資料庫 (。

JET_errDatabaseNotFound

先前未附加資料庫 (請參閱 JetAttachDatabase) 。

JET_errInvalidDatabase

嘗試開啟不是有效資料庫檔案的檔案。

JET_errOneDatabasePerSession

嘗試開啟多個資料庫,並已設定 JET_paramOneDatabasePerSession 。 如需詳細資訊,請參閱 系統參數

JET_wrnFileOpenReadOnly

檔案已附加為唯讀,但 JetOpenDatabase 未傳遞JET_bitDbReadOnly。 資料庫仍會以唯讀存取權開啟。

規格需求

需求

用戶端

需要 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

實作為 JetOpenDatabaseW (Unicode) 和 JetOpenDatabaseA (ANSI) 。

另請參閱

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetAttachDatabase
JetAttachDatabase2
JetSetSystemParameter
系統參數