QUOTENAME (Transact-SQL)
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Punto de conexión de análisis SQL en Microsoft Fabric Almacenamiento en Microsoft Fabric
Devuelve una cadena Unicode con los delimitadores agregados para convertirla en un identificador delimitado válido de SQL Server.
Convenciones de sintaxis de Transact-SQL
Sintaxis
QUOTENAME ( 'character_string' [ , 'quote_character' ] )
Argumentos
'character_string'
Es una cadena de datos de caracteres Unicode. character_string es sysname y está limitado a 128 caracteres. Las entradas mayores de 128 caracteres devuelven NULL.
'quote_character'
Es una cadena de un solo carácter que se utiliza como delimitador. Puede ser una comilla simple ( ' ), un corchete de apertura o cierre ( [] ), comillas dobles ( " ), un paréntesis de apertura o cierre ( () ), un signo de mayor que o menor que ( >< ), una llave de apertura o cierre ( {} ) o un acento grave ( ` ). Se devuelve NULL si se proporciona un carácter no admitido. Si no se especifica quote_character, se usarán corchetes.
Tipos de valor devuelto
nvarchar(258)
Ejemplos
En el siguiente ejemplo se toma la cadena de caracteres abc[]def
y se utilizan los caracteres [
y ]
para crear un identificador delimitado de SQL Server válido.
SELECT QUOTENAME('abc[]def');
Este es el conjunto de resultados.
[abc[]]def]
(1 row(s) affected)
Observe que el corchete derecho de la cadena abc[]def
aparece dos veces para indicar que se trata de un carácter de escape.
En el siguiente ejemplo se prepara una cadena entrecomillada para usarla para dar nombre a una columna.
DECLARE @columnName NVARCHAR(255)='user''s "custom" name'
DECLARE @sql NVARCHAR(MAX) = 'SELECT FirstName AS ' + QUOTENAME(@columnName) + ' FROM dbo.DimCustomer'
EXEC sp_executesql @sql
Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)
En el siguiente ejemplo se toma la cadena de caracteres abc def
y se utilizan los caracteres [
y ]
para crear un identificador delimitado de SQL Server válido.
SELECT QUOTENAME('abc def');
Este es el conjunto de resultados.
[abc def]
(1 row(s) affected)
Consulte también
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)
String Functions (Transact-SQL) [Funciones de cadena (Transact-SQL)]