次の方法で共有


SqlLocalDB ユーティリティ

適用対象: SQL Server

SqlLocalDB ユーティリティを使用して、SQL Server Express LocalDB のインスタンスを作成します。 SqlLocalDB ユーティリティ (SqlLocalDB.exe) は、ユーザーと開発者が SQL Server Express LocalDB のインスタンスを作成および管理できるようにするコマンド ライン ツールです。 LocalDB の使用方法については、「 SQL Server Express LocalDB」を参照してください。

構文

SqlLocalDB.exe
{
      [ create   | c ] <instance-name> <instance-version> [ -s ]
    | [ delete   | d ] <instance-name>
    | [ start    | s ] <instance-name>
    | [ stop     | p ] <instance-name>  [ -i ] [ -k ]
    | [ share    | h ] [ "<user_SID>" | "<user_account>" ] "<private-name>" "<shared-name>"
    | [ unshare  | u ] "<shared-name>"
    | [ info     | i ] <instance-name>
    | [ versions | v ]
    | [ trace    | t ] [ on | off ]
    | [ help     | -? ]
}

引数

[ create | c ] <instance-name><instance-version> [ -s ]

SQL Server Express LocalDB の新しいインスタンスを作成します。 SqlLocalDB では、引数 <instance-version> で指定された SQL Server Express バイナリのバージョンを使用します。 バージョン番号は、1 桁以上の 10 進数の数値書式で指定します。 マイナー バージョン番号 (サービス パック) は省略可能です。 たとえば、11.0 と 11.0.1186 という 2 つのバージョン番号のどちらも使用できます。 指定したバージョンがコンピューターにインストールされている必要があります。 指定しなかった場合、バージョン番号は既定で SqlLocalDB ユーティリティのバージョンに設定されます。 -sを追加すると、LocalDB の新しいインスタンスが開始されます。

[ 共有 | h ]

指定した共有名を使用して、LocalDB の指定されたプライベート インスタンスを共有します。 ユーザー SID またはアカウント名を省略した場合、既定で現在のユーザーになります。

[ 共有解除 | u ]

LocalDB の指定した共有インスタンスの共有を停止します。

[ delete | d ] <instance-name>

SQL Server Express LocalDB の指定したインスタンスを削除します。

[ start | s ]"<instance-name>"

SQL Server Express LocalDB の指定したインスタンスを開始します。 成功すると、ステートメントは LocalDB の名前付きパイプ アドレスを返します。

[ stop | p ] <instance-name> [ -i ] [ -k ]

SQL Server Express LocalDB の指定されたインスタンスを停止します。 -i を追加した場合は、NOWAIT オプション付きでインスタンスのシャットダウンを要求します。 -k を追加した場合、インスタンス プロセスは通知されることなく停止されます。

[ info | i ][ <instance-name> ]

現在のユーザーが所有する SQL Server Express LocalDB のすべてのインスタンスを一覧表示します。

<instance-name> は、名前、バージョン、状態 (実行中または停止済み)、SQL Server Express LocalDB の指定されたインスタンスの最終開始時刻、LocalDB のローカル パイプ名を返します。

[ trace | t ] { on | off }

trace on では、現在のユーザーの SqlLocalDB API 呼び出しのトレースが有効になります。 trace off はトレースを無効にします。

-?

SqlLocalDB オプションの簡単な説明が返されます。

解説

引数 instance name は、SQL Server 識別子のルールに従っているか、二重引用符で囲む必要があります。

引数を指定せずに SqlLocalDB を実行すると、ヘルプ テキストが返されます。

開始以外の操作は、現在サインインしているユーザーに属するインスタンスでのみ実行できます。 SQLLOCALDB インスタンスを共有している場合、開始と停止はそのインスタンスの所有者のみが実行できます。

A. LocalDB のインスタンスを作成する

次の例では、SQL Server バイナリを使用して DEPARTMENT という名前の SQL Server Express LocalDB のインスタンスを作成し、インスタンスを開始します。

SqlLocalDB.exe create "DEPARTMENT" 12.0 -s

B. LocalDB の共有インスタンスを操作する

管理者権限を使用してコマンド プロンプトを開きます。 <password> を有効なパスワードに置き換えます。

SqlLocalDB.exe create "DeptLocalDB"
SqlLocalDB.exe share "DeptLocalDB" "DeptSharedLocalDB"
SqlLocalDB.exe start "DeptLocalDB"
SqlLocalDB.exe info "DeptLocalDB"
REM The previous statement outputs the Instance pipe name for the next step
sqlcmd -S np:\\.\pipe\LOCALDB#<use your pipe name>\tsql\query
CREATE LOGIN NewLogin WITH PASSWORD = '<password>';
GO
CREATE USER NewLogin;
GO
EXIT

次のコードを実行して、 NewLogin ログインを使用して LocalDB の共有インスタンスに接続します。 <password> を有効なパスワードに置き換えます。

sqlcmd -S (localdb)\.\DeptSharedLocalDB -U NewLogin -P <password>