LocalDBStartInstance 函式
適用於:SQL Server
啟動指定的 SQL Server Express LocalDB 實例。
頭檔: msoledbsql.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) 都是選擇性的。 下表顯示使用這些自變數及其結果的選項。
緩衝區 | 緩衝區大小 | 解題說明 | 動作 |
---|---|---|---|
NULL | NULL | 使用者想要啟動實例,而且不需要管道名稱。 | 啟動實例(沒有管道傳回,也沒有必要的緩衝區大小傳回)。 |
NULL | 展示 | 使用者要求輸出緩衝區大小。 (在下一次呼叫中,使用者可能會要求實際開始。 | 傳回必要的緩衝區大小(沒有開始,也沒有管線傳回)。 結果S_OK。 |
展示 | NULL | 不允許;輸入不正確。 | 傳回的結果LOCALDB_ERROR_INVALID_PARAMETER。 |
展示 | 展示 | 使用者想要啟動實例,且需要管道名稱在啟動之後連線到它。 | 檢查緩衝區大小、啟動 實例,並傳回緩衝區中的管道名稱。 緩衝區大小自變數會傳回 「server=」 字串的長度,不包括終止 Null。 |
如需使用 LocalDB API 的程式碼範例,請參閱 SQL Server Express LocalDB 參考。