Encoder et décoder des identificateurs SQL Server
Les identificateurs délimités SQL Server contiennent parfois des caractères non pris en charge dans les chemins d'accès Windows PowerShell. Vous pouvez spécifier ces caractères en encodant leurs valeurs hexadécimales.
Avant de commencer : Limitations et restrictions
Pour traiter des caractères spéciaux : Encodage d'un identificateur, Décodage d'un identificateur
Avant de commencer
Les caractères qui ne sont pas pris en charge dans les noms de chemins d'accès Windows PowerShell peuvent être représentés, ou codés, sous la forme du caractère « % » suivi de la valeur hexadécimale pour le modèle binaire qui représente le caractère, comme dans « **%**xx ». Le codage peut toujours être utilisé pour gérer des caractères qui ne sont pas pris en charge dans les chemins d'accès Windows PowerShell.
L'applet de commande Encode-SqlName prend comme entrée un identificateur SQL Server. Elle génère une chaîne contenant tous les caractères qui ne sont pas pris en charge par le langage Windows PowerShell codés avec « % xx ». L'applet de commande Decode-SqlName prend comme entrée un identificateur SQL Server encodé et retourne l'identificateur d'origine.
Limitations et restrictions
Les applets de commande Encode-Sqlname et Decode-Sqlname encodent ou décodent uniquement les caractères autorisés dans les identificateurs délimités SQL Server, mais ne sont pas prises en charge dans les chemins d'accès PowerShell. Voici les caractères encodés par Encode-SqlName et décodés par Decode-SqlName :
Caractère |
\ |
/ |
: |
% |
< |
> |
* |
? |
[ |
] |
| |
Encodage hexadécimal |
%5C |
%2F |
%3A |
%25 |
%3C |
%3E |
%2A |
%3F |
%5B |
%5D |
%7C |
[Top]
Encodage d'un identificateur
Pour encoder un identificateur SQL Server dans un chemin d'accès PowerShell
Utilisez l'une des deux méthodes suivantes pour encoder un identificateur SQL Server :
Spécifiez le code hexadécimal du caractère non pris en charge à l'aide de la syntaxe %XX, où XX est le code hexadécimal.
Passez l'identificateur en tant que chaîne entre guillemets à l'applet de commande Encode-Sqlname
Exemples (encodage)
Cet exemple spécifie la version encodée du caractère « : » (%3A) :
Set-Location Table%3ATest
Vous pouvez également utiliser Encode-SqlName pour générer un nom pris en charge par Windows PowerShell :
Set-Location (Encode-SqlName "Table:Test")
[Haut de la page]
Décodage d'un identificateur
Pour décoder un identificateur SQL Server à partir d'un chemin d'accès PowerShell
Utilisez l'applet de commande Decode-Sqlname pour remplacer les encodages hexadécimaux par les caractères représentés par l'encodage.
Exemples (décodage)
Cet exemple retourne « Table:Test » :
Decode-SqlName "Table%3ATest"
[Top]
Voir aussi
Concepts
Identificateurs SQL Server dans PowerShell