適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
分析平台系統(PDW)
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉儲
Microsoft Fabric 中的 SQL 資料庫
傳回已新增分隔符號的 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)
格式訊息 (Transact-SQL)
替換 (Transact-SQL)
反轉 (Transact-SQL)
STRING_AGG (Transact-SQL)
STRING_ESCAPE (Transact-SQL)
東西 (Transact-SQL)
翻譯 (Transact-SQL)
字串函數 (Transact-SQL)