Spécifier des instances dans le fournisseur SQL Server PowerShell

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Les chemins d'accès spécifiés pour le fournisseur PowerShell SQL Server doivent identifier l'instance du Moteur de base de données et de l'ordinateur sur lequel elle s'exécute. La syntaxe pour spécifier l'ordinateur et l'instance doit être conforme aux règles relatives aux identificateurs SQL Server et aux chemins d'accès Windows PowerShell.

Notes

Il existe deux modules SQL Server PowerShell : SqlServer et SQLPS.

Le module SqlServer est le module PowerShell actuel à utiliser.

Le module SQLPS fait partie de l’installation de SQL Server (à des fins de compatibilité descendante), mais il n’est plus mis à jour.

Le module SqlServer contient les versions mises à jour des applets de commande disponibles dans SQLPS ainsi que de nouvelles applets de commande pour prendre en charge les dernières fonctionnalités SQL.

Installez le module SqlServer à partir de PowerShell Gallery.

Pour plus d’informations, consultez SQL Server PowerShell.

Avant de commencer

Le premier nœud venant après SQLSERVER:\SQL dans un chemin d'accès de fournisseur SQL Server est le nom de l'ordinateur qui exécute l'instance du Moteur de base de données; par exemple :

SQLSERVER:\SQL\MyComputer  

Si vous exécutez Windows PowerShell sur le même ordinateur que l'instance du Moteur de base de données, vous pouvez utiliser localhost ou (local) à la place du nom de l'ordinateur. Les scripts utilisant localhost ou (local) peuvent être exécutés sur n'importe quel ordinateur, sans qu'il soit nécessaire de les modifier pour refléter différents noms d'ordinateur.

Vous pouvez exécuter plusieurs instances du programme exécutable du Moteur de base de données sur le même ordinateur. Le nœud venant après le nom de l'ordinateur dans un chemin d'accès de fournisseur SQL Server identifie l'instance ; par exemple :

SQLSERVER:\SQL\MyComputer\MyInstance  

Chaque ordinateur peut avoir une instance par défaut du Moteur de base de données. Vous ne spécifiez pas de nom pour l'instance par défaut lorsque vous l'installez. Si vous spécifiez seulement un nom d'ordinateur dans une chaîne de connexion, vous êtes connecté à l'instance par défaut sur cet ordinateur. Toutes les autres instances sur l'ordinateur doivent être des instances nommées. Vous spécifiez le nom de l'instance pendant l'installation, et les chaînes de connexion doivent spécifier à la fois le nom d'ordinateur et le nom de l'instance.

Limitations et restrictions

Vous ne pouvez pas utiliser de point (.) pour spécifier l'ordinateur local dans les scripts PowerShell. Le point n'est pas pris en charge car PowerShell l'interprète comme une commande.

Les parenthèses contenues dans (local) sont normalement traitées comme des commandes par Windows PowerShell. Vous devez les encoder ou les placer dans une séquence d'échappement pour une utilisation dans un chemin d'accès, ou mettre le chemin d'accès entre guillemets doubles. Pour plus d'informations, consultez Encoder et décoder des identificateurs SQL Server.

Le fournisseur SQL Server requiert que vous spécifiiez toujours un nom d'instance. Pour les instances par défaut, vous devez spécifier le nom de l'instance DEFAULT.

Exemples : noms d'ordinateur et d'instance

Cet exemple utilise localhost et DEFAULT pour spécifier l'instance par défaut sur l'ordinateur local :

Set-Location SQLSERVER:\SQL\localhost\DEFAULT   

Les parenthèses contenues dans (local) sont normalement traitées comme des commandes par Windows PowerShell. Vous devez effectuer l'une des opérations suivantes :

  • Mettre la chaîne de chemin d'accès entre guillemets :

    Set-Location "SQLSERVER:\SQL\(local)\DEFAULT"  
    
  • Placer la parenthèse dans une séquence d'échappement à l'aide du caractère « ` » (backtick) :

    Set-Location SQLSERVER:\SQL\`(local`)\DEFAULT  
    
  • Encoder la parenthèse à l'aide de sa représentation hexadécimale :

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

Voir aussi

Identificateurs SQL Server dans PowerShell
Fournisseur SQL Server PowerShell
SQL Server PowerShell