다음을 통해 공유


QUOTENAME(Transact-SQL)

:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsPDW(플랫폼 시스템) SQL 분석 엔드 Microsoft Fabric<포인트/c12>warehouse in Microsoft FabricSQL database in Microsoft Fabric

입력 문자열을 유효한 SQL Server delimited identifier 만들기 위해 구분 기호가 추가된 유니코드 문자열을 반환합니다.

Transact-SQL 구문 규칙

구문

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

인수

'character_string'

유니코드 문자 데이터의 문자열입니다. character_stringsysname이며 128자로 제한됩니다. 128자보다 큰 입력은 반환됩니다 NULL.

'quote_character'

구분 기호로 사용할 한 문자 문자열입니다. 작은따옴표('), 왼쪽 또는 오른쪽 대괄호([또는]), 큰따옴표(), 왼쪽 또는 오른쪽 괄호(("또는)) 또는 기호보다 크거나 작거나<, 왼쪽 또는 오른쪽 중괄호(>{또는) 또는 }백틱(''')일 수 있습니다.

허용되지 않는 따옴표 문자를 NULL 제공하는 경우 반환됩니다. quote_character 지정하지 않으면 대괄호가 사용됩니다.

반환 형식

nvarchar(258)

다음 예제에서는 문자열 abc[]def 사용하고 [] 문자를 사용하여 유효한 SQL Server 구분 식별자를 만듭니다.

SELECT QUOTENAME('abc[]def');

결과 집합은 다음과 같습니다.

[abc[]]def]

문자열 abc[]def 의 오른쪽 대괄호는 이스케이프 문자를 나타내기 위해 두 배가 됩니다.

다음 예에서는 열의 이름을 지정하는 데 사용할 따옴표 붙은 문자열을 준비합니다.

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;

예: Azure Synapse Analytics 및 분석 플랫폼 시스템(PDW)

다음 예제에서는 문자열 abc def 사용하고 [] 문자를 사용하여 유효한 SQL Server 구분 식별자를 만듭니다.

SELECT QUOTENAME('abc def');

결과 집합은 다음과 같습니다.

[abc def]