次の方法で共有


SQL Server PowerShell プロバイダーでインスタンスを指定する

SQL Server PowerShell プロバイダーに指定するパスでは、 データベース エンジン のインスタンスと、それが実行されているコンピューターを示す必要があります。 コンピューターおよびインスタンスを指定する構文は、SQL Server 識別子と Windows PowerShell パスの両方の規則に準拠している必要があります。

SQL Server PowerShell モジュールには SqlServerSQLPS の 2 つがあります。

SqlServer モジュールは、使用する現在の PowerShell モジュールです。

SQLPS モジュールは、(後方互換性のため) SQL Server のインストールに含まれていますが、今後更新されることはありません。

SqlServer モジュールには、SQLPS のコマンドレットの更新バージョンに加え、最新の SQL 機能をサポートする新しいコマンドレットが含まれています。

PowerShell ギャラリーから SqlServer モジュールをインストールします。

詳細については、 SQL Server PowerShell を参照してください。

開始する前に

SQL Server プロバイダーのパスで SQLSERVER:\SQL に続く最初のノードは、たとえば次のような、 データベース エンジンのインスタンスが実行されているコンピューターの名前です。

SQLSERVER:\SQL\MyComputer

データベース エンジンのインスタンスと同じコンピューター上で Windows PowerShell を実行している場合は、コンピューター名の代わりに localhost または (local) を使用できます。 localhost または (local) が使用されたスクリプトは、異なるコンピューター名を反映するための変更を加えることなく、すべてのコンピューター上で実行できます。

データベース エンジン の実行可能プログラムの複数のインスタンスを、同じコンピューターで実行できます。 SQL Server プロバイダーのパスでコンピューター名に続くノードは、たとえば次のように、インスタンスを識別します。

SQLSERVER:\SQL\MyComputer\MyInstance

各コンピューターでは、 データベース エンジンの既定のインスタンスを 1 つだけ使用できます。 既定のインスタンスには、そのインストール時に名前を指定しません。 接続文字列にコンピューター名のみを指定すると、そのコンピューターの既定のインスタンスに接続されます。 コンピューター上のその他すべてのインスタンスは、名前付きインスタンスにする必要があります。 インスタンス名はセットアップ時に指定します。接続文字列には、コンピューター名とインスタンス名の両方を指定する必要があります。

制限事項と制約事項

PowerShell スクリプトでは、ピリオド (.) を使用してローカル コンピューターを指定することはできません。 PowerShell ではピリオドはコマンドとして解釈されるため、ピリオドはサポートされません。

通常、(local) に使用されているかっこ文字は、Windows PowerShell でコマンドとして扱われます。 パス内で使用するには、エンコードするかエスケープする必要があります。または、パスを二重引用符で囲みます。 詳細については、「SQL Server 識別子のエンコードとデコード」を参照してください。

SQL Server プロバイダーでは、常にインスタンス名を指定する必要があります。 既定のインスタンスには、DEFAULT というインスタンス名を指定する必要があります。

例: コンピューター名とインスタンス名

この例では、次のように、localhost および DEFAULT を使用してローカル コンピューター上の既定のインスタンスを指定します。

Set-Location SQLSERVER:\SQL\localhost\DEFAULT

通常、(local) に使用されているかっこ文字は、Windows PowerShell でコマンドとして扱われます。 次のいずれかの作業を行う必要があります。

  • パス文字列を引用符で囲みます。

    Set-Location "SQLSERVER:\SQL\(local)\DEFAULT"
    
  • バック チェック文字 (') を使用してかっこをエスケープします。

    Set-Location SQLSERVER:\SQL\`(local`)\DEFAULT
    
  • 16 進数表記を使用して、かっこをエンコードします。

    Set-Location SQLSERVER:\SQL\%28local%29\DEFAULT