Aracılığıyla paylaş


UNICODE (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'teki SQL analiz uç noktasıMicrosoft Fabric'teki ambarMicrosoft Fabric'teki SQL veritabanı

Giriş ifadesinin ilk karakteri için Unicode standardı tarafından tanımlandığı şekilde tamsayı değerini döndürür.

Transact-SQL söz dizimi kuralları

Sözdizimi

UNICODE ( 'ncharacter_expression' )  

Arguments

'ncharacter_expression'
Bir nchar veya nvarchar ifadesidir.

Dönüş Türleri

int

Açıklamalar

SQL Server 2012'den önceki (11.x) ve Azure SQL Veritabanı'ndaki sürümlerde, UNICODE fonksiyonu 000000 ile 00FFFF arasında bir UCS-2 kod noktası döndürür ve bu kod noktası Unicode Temel Çok Dilli Düzlem'deki (BMP) 65.535 karakteri temsil edebilir. SQL Server 2012 (11.x) ile başlayarak, Ek Karakter (SC) özellikli derlemeler kullanıldığında, UNICODE 000000 ile 10FFFF arasında bir UTF-16 kod noktası döndürür. Veritabanı Motoru'ndaki Unicode desteği hakkında daha fazla bilgi için Collation and Unicode Support'a bakınız.

Örnekler

A. UNICODE ve NCHAR fonksiyonu kullanılarak

Aşağıdaki örnekUNICODE, dizesinin Åkergatan 24ilk karakterinin UNICODE değerini basmak için ve gerçek ilk karakteri basmak için ve ve gerçek ilk karakteri basmak için ve NCHAR fonksiyonlarını kullanır. Å

DECLARE @nstring NCHAR(12);  
SET @nstring = N'Åkergatan 24';  
SELECT UNICODE(@nstring), NCHAR(UNICODE(@nstring));  

Sonuç kümesi aşağıdadır.

----------- -   
197         Å  

B. SUBSTRING, UNICODE ve CONVERT kullanılarak

Aşağıdaki örnek SUBSTRING, , UNICODE, ve CONVERT fonksiyonlarını kullanarak dizide her karakterin Åkergatan 24karakter numarasını, Unicode karakterini ve UNICODE değerini bastırır.

-- The @position variable holds the position of the character currently  
-- being processed. The @nstring variable is the Unicode character   
-- string to process.  
DECLARE @position INT, @nstring NCHAR(12);  
-- Initialize the current position variable to the first character in   
-- the string.  
SET @position = 1;  
-- Initialize the character string variable to the string to process.   
-- Notice that there is an N before the start of the string, which   
-- indicates that the data following the N is Unicode data.  
SET @nstring = N'Åkergatan 24';  
-- Print the character number of the position of the string you are at,   
-- the actual Unicode character you are processing, and the UNICODE   
-- value for this particular character.  
PRINT 'Character #' + ' ' + 'Unicode Character' + ' ' + 'UNICODE Value';  
WHILE @position <= LEN(@nstring)  
-- While these are still characters in the character string,  

BEGIN;  
   SELECT @position AS [position],   
      SUBSTRING(@nstring, @position, 1) AS [character],  
      UNICODE(SUBSTRING(@nstring, @position, 1)) AS [code_point];  
   SET @position = @position + 1;  
END; 

Sonuç kümesi aşağıdadır.

Character # Unicode Character UNICODE Value  
  
----------- ----------------- -----------   
1           Å                 197           
  
----------- ----------------- -----------   
2           k                 107           
  
----------- ----------------- -----------   
3           e                 101           
  
----------- ----------------- -----------   
4           r                 114           
  
----------- ----------------- -----------   
5           g                 103           
  
----------- ----------------- -----------   
6           a                 97            
  
----------- ----------------- -----------   
7           t                 116           
  
----------- ----------------- -----------   
8           a                 97            
  
----------- ----------------- -----------   
9           n                 110           
  
----------- ----------------- -----------   
10                            32            
  
----------- ----------------- -----------   
11          2                 50            
  
----------- ----------------- -----------   
12          4                 52  

Ayrıca Bkz.

ASCII (Transact-SQL)
CHAR (Transact-SQL)
NCHAR (Transact-SQL)
Dize İşlevleri (Transact-SQL)
Harmanlama ve Unicode Desteği