LocalDBStartInstance 函數

啟動指定的 SQL Server Express LocalDB 執行個體。

標頭檔: sqlncli.h

語法

HRESULT LocalDBStartInstance(  
           PCWSTR pInstanceName,  
           DWORD dwFlags,   
           LPWSTR wszSqlConnection,   
           LPDWORD lpcchSqlConnection   
);  

參數

pInstanceName
[輸入] 要啟動的 LocalDB 執行個體名稱。

dwFlags
[輸入] 保留供日後使用。 目前應設為 0。

wszSqlConnection
[輸出] 儲存 LocalDB 執行個體連接字串的緩衝區。

lpcchSqlConnection
[輸入/輸出]在輸入中,包含 字元中 wszSqlConnection 緩衝區的大小,包括任何尾端 Null。 輸出時,如果指定的緩衝區大小太小,則會包含所需的緩衝區大小 (以字元為單位),包括尾端的 Null。

傳回

S_OK
此函數已成功。

LOCALDB_ERROR_NOT_INSTALLED
SQL Server Express LocalDB 未安裝在電腦上。

LOCALDB_ERROR_INVALID_PARAMETER
一個或多個指定的輸入參數無效。

LOCALDB_ERROR_INVALID_INSTANCE_NAME
指定的執行個體名稱無效。

LOCALDB_ERROR_UNKNOWN_INSTANCE
執行個體不存在。

LOCALDB_ERROR_INSUFFICIENT_BUFFER
指定的緩衝區 wszSqlConnection 太小。

LOCALDB_ERROR_WAIT_TIMEOUT
嘗試取得同步處理鎖定時發生逾時。

LOCALDB_ERROR_INSTANCE_FOLDER_PATH_TOO_LONG
應儲存執行個體的路徑長度超過 MAX_PATH。

LOCALDB_ERROR_CANNOT_GET_USER_PROFILE_FOLDER
無法擷取使用者設定檔資料夾。

LOCALDB_ERROR_CANNOT_ACCESS_INSTANCE_FOLDER
無法存取執行個體資料夾。

LOCALDB_ERROR_CANNOT_ACCESS_INSTANCE_REGISTRY
無法存取執行個體登錄。

LOCALDB_ERROR_CANNOT_MODIFY_INSTANCE_REGISTRY
無法修改執行個體登錄。

LOCALDB_ERROR_CANNOT_CREATE_SQL_PROCESS
無法建立 SQL Server 處理序。

LOCALDB_ERROR_SQL_SERVER_STARTUP_FAILED
已啟動 SQL Server 處理序,但是 SQL Server 啟動失敗。

LOCALDB_ERROR_INSTANCE_CONFIGURATION_CORRUPT
執行個體組態已損毀。

LOCALDB_ERROR_AUTO_INSTANCE_CREATE_FAILED
無法建立自動執行個體。 請參閱 Windows 應用程式事件記錄檔,以取得錯誤詳細資料。

LOCALDB_ERROR_INTERNAL_ERROR
發生意外錯誤。 請參閱事件記錄檔,以取得詳細資料。

詳細資料

連接緩衝區引數 (wszSqlConnection) 和連接緩衝區大小引數 (lpcchSqlConnection) 都是選擇性的。 下表顯示使用這些引數的選項及其結果。

Buffer 緩衝區大小 基本原理 動作
NULL NULL 使用者想要啟動 實例,而且不需要管道名稱。 啟動執行個體 (不傳回管道且不傳回所需的緩衝區大小)。
NULL 存在 使用者要求輸出緩衝區大小。 (在下一個呼叫中,使用者可能會要求實際啟動。) 傳回所需的緩衝區大小 (不啟動且不傳回管道)。 結果為 S_OK。
存在 NULL 不允許;輸入不正確。 傳回的結果為 LOCALDB_ERROR_INVALID_PARAMETER。
存在 存在 使用者想要啟動執行個體,且在啟動後,需要管道名稱以連接至此執行個體。 檢查緩衝區大小、啟動執行個體,然後傳回緩衝區中的管道名稱。
緩衝區大小引數會傳回 「server=」 字串的長度,不包括終止 Null。

如需使用 LocalDB API 的程式碼範例,請參閱SQL Server Express LocalDB 參考

另請參閱

SQL Server Express LocalDB 標頭和版本資訊