QUOTENAME (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲
傳回已新增分隔符號的 Unicode 字串,讓輸入字串成為有效的 SQL Server 分隔識別碼。
Transact-SQL 語法慣例 (部分機器翻譯)
語法
QUOTENAME ( 'character_string' [ , 'quote_character' ] )
引數
'character_string'
這是 Unicode 字元資料的字串。 character_string 是 sysname,且限制為 128 個字元。 大於 128 個字元的輸入會傳回 NULL。
'quote_character'
這是用來當做分隔符號的單字元字串。 它可以是單引號 ( ' )、左或右方括弧 ( [] )、雙引號 ( " )、左或右括弧 ( () )、大於或小於符號 ( >< )、左或右大括弧 ( {} ) 或反勾號 ( ` )。 如果提供了無法接受的字元,則會傳回 NULL。 如果未指定 quote_character,就會使用方括號。
傳回型別
nvarchar(258)
範例
下列範例會使用字元字串 abc[]def
,且使用 [
和 ]
字元建立有效的 SQL Server 分隔識別碼。
SELECT QUOTENAME('abc[]def');
結果集如下所示。
[abc[]]def]
(1 row(s) affected)
請注意,abc[]def
字串中的兩個右方括號用來表示逸出字元。
下例會準備用來命名資料行的加引號字串。
DECLARE @columnName NVARCHAR(255)='user''s "custom" name'
DECLARE @sql NVARCHAR(MAX) = 'SELECT FirstName AS ' + QUOTENAME(@columnName) + ' FROM dbo.DimCustomer'
EXEC sp_executesql @sql
範例:Azure Synapse Analytics 和 Analytics Platform System (PDW)
下列範例會使用字元字串 abc def
,且使用 [
和 ]
字元建立有效的 SQL Server 分隔識別碼。
SELECT QUOTENAME('abc def');
結果集如下所示。
[abc def]
(1 row(s) affected)
另請參閱
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)
字串函數 (Transact-SQL)