Freigeben über


QUOTENAME (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics Endpoint in Microsoft FabricWarehouse in Microsoft FabricSQL-Datenbank in Microsoft Fabric

Gibt eine Unicode-Zeichenfolge mit den Trennzeichen zurück, die hinzugefügt werden, um die Eingabezeichenfolge zu einer gültigen SQL Server delimited identifier zu machen.

Transact-SQL Syntaxkonventionen

Syntax

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

Argumente

'character_string'

Eine Zeichenfolge mit Unicode-Zeichendaten. character_string ist vom Datentyp sysname und auf 128 Zeichen beschränkt. Eingaben, die größer als 128 Zeichen sind, werden zurückgegeben NULL.

'quote_character'

Eine einstellige Zeichenfolge, die als Trennzeichen verwendet werden soll. Kann ein einfaches Anführungszeichen ('), eine linke oder rechte Klammer ([ oder ]), ein doppeltes Anführungszeichen ("), eine linke oder rechte Klammer (( oder )), ein größer oder kleiner als Zeichen (> oder <), eine linke oder rechte geschweifte Klammer ({ oder }) oder ein Backtick ('') sein.

Wenn Sie ein inakzeptables Anführungszeichen angeben, NULL wird dieses zurückgegeben. Wenn quote_character nicht angegeben ist, werden Klammern verwendet.

Rückgabetypen

nvarchar(258)

Beispiele

Im folgenden Beispiel wird die Zeichenfolge abc[]def verwendet und verwendet die Zeichen [ und ] Zeichen, um einen gültigen SQL Server durch Trennzeichen getrennten Bezeichner zu erstellen.

SELECT QUOTENAME('abc[]def');

Hier sehen Sie das Ergebnis.

[abc[]]def]

Die rechte Klammer in der Zeichenfolge abc[]def wird verdoppelt, um ein Escapezeichen anzugeben.

Im folgenden Beispiel wird eine Zeichenfolge in Anführungszeichen zum Benennen einer Spalte vorbereitet.

DECLARE @columnName AS NVARCHAR (255) = 'user''s "custom" name';

DECLARE @sql AS NVARCHAR (MAX) = 'SELECT FirstName AS ' + QUOTENAME(@columnName) + ' FROM dbo.DimCustomer';

EXECUTE sp_executesql @sql;

Beispiele: Azure Synapse Analytics und Analytics Platform System (PDW)

Im folgenden Beispiel wird die Zeichenfolge abc def verwendet und verwendet die Zeichen [ und ] Zeichen, um einen gültigen SQL Server durch Trennzeichen getrennten Bezeichner zu erstellen.

SELECT QUOTENAME('abc def');

Hier sehen Sie das Ergebnis.

[abc def]