QUOTENAME (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Point de terminaison analytique SQL dans Microsoft FabricEntrepôt dans Microsoft Fabric

Retourne une chaîne Unicode avec les délimiteurs ajoutés afin que la chaîne d'entrée soit un identificateur délimité SQL Server valide.

Conventions de la syntaxe Transact-SQL

Syntaxe

QUOTENAME ( 'character_string' [ , 'quote_character' ] )   

Remarque

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 (12.x) et versions antérieures, consultez la Documentation sur les versions antérieures.

Arguments

'character_string'
Représente une chaîne de caractères au format Unicode. character_string est de type sysname et est limité à 128 caractères. Les entrées de plus de 128 caractères retournent une valeur NULL.

'quote_character'
Représente une chaîne d'un seul caractère à utiliser en tant que délimiteur. Il peut s’agir d’une apostrophe ( ' ), d’un crochet droit ou gauche ( [] ), d’un guillemet double ( " ), d’une parenthèse gauche ou droite ( () ), d’un signe inférieur ou supérieur à ( >< ), d’une accolade gauche ou droite ( {} ) ou d’un accent grave ( ` ). La valeur NULL est retournée si un caractère non autorisé est fourni. Si quote_character n’est pas spécifié, les crochets sont utilisés.

Types de retour

nvarchar(258)

Exemples

L'exemple suivant prend la chaîne de caractères abc[]def et utilise les caractères [] pour créer un identificateur délimité SQL Server valide.

SELECT QUOTENAME('abc[]def');

Voici le jeu de résultats obtenu.

[abc[]]def]
  
(1 row(s) affected)  

Vous remarquerez que dans la chaîne abc[]def, le crochet de droite est doublé pour indiquer un caractère d'échappement.

L’exemple suivant prépare une chaîne entre guillemets à utiliser pour nommer une colonne.

DECLARE @columnName NVARCHAR(255)='user''s "custom" name'
DECLARE @sql NVARCHAR(MAX) = 'SELECT FirstName AS ' + QUOTENAME(@columnName) + ' FROM dbo.DimCustomer'

EXEC sp_executesql @sql

Exemples : Azure Synapse Analytics et Analytics Platform System (PDW)

L'exemple suivant prend la chaîne de caractères abc def et utilise les caractères [] pour créer un identificateur délimité SQL Server valide.

SELECT QUOTENAME('abc def');   

Voici le jeu de résultats obtenu.

[abc def]  
  
(1 row(s) affected)  

Voir aussi

PARSENAME (Transact-SQL)
CONCAT (Transact-SQL)
CONCAT_WS (Transact-SQL)
FORMATMESSAGE (Transact-SQL)
REPLACE (Transact-SQL)
REVERSE (Transact-SQL)
STRING_AGG (Transact-SQL)
STRING_ESCAPE (Transact-SQL)
STUFF (Transact-SQL)
TRANSLATE (Transact-SQL)
Fonctions de chaîne (Transact-SQL)