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
[入力/出力]入力時には、末尾の null を含む wszSqlConnection バッファーのサイズが文字で格納されます。 出力時に、指定されたバッファー サイズが小さすぎる場合は、末尾の null を含め、必要なバッファー サイズが文字で格納されます。

戻り値

S_OK
関数が正常に実行されました。

LOCALDB_ERROR_NOT_INSTALLED
SQL Server Express LocalDB は、コンピューターにインストールされていません。

LOCALDB_ERROR_INVALID_PARAMETER
指定した 1 つまたは複数の入力パラメーターが無効です。

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 です。
存在 存在 ユーザーはインスタンスを起動する必要があり、起動後に接続するパイプ名が必要です。 バッファー サイズを確認し、インスタンスを起動し、バッファーにあるパイプ名を返します。
buffer size 引数は、終了 null を含まない "server=" 文字列の長さを返します。

LocalDB API を使用するコード サンプルについては、「SQL Server Express LocalDB リファレンス」を参照してください

参照

SQL Server Express LocalDB ヘッダーとバージョン情報