I SQL Server kan du bruge T-SQL NCHAR()
funktion til at returnere Unicode-tegnet baseret på den angivne heltalskode.
Du angiver heltalskoden som et argument, og funktionen returnerer Unicode-tegnet som defineret af Unicode-standarden.
Syntaks
Syntaksen ser sådan ud:
NCHAR ( integer_expression )
Hvor integer_expression
er det heltal, som du vil have Unicode-tegnet returneret for.
Eksempel 1 – Grundlæggende brug
Her er et grundlæggende eksempel for at demonstrere:
SELECT NCHAR(123) AS Result;
Resultat:
+----------+ | Result | |----------| | { | +----------+
Eksempel 2 – Uden for rækkevidde
Microsoft-dokumentationen angiver følgende om rækken af acceptable heltal:
Når samlingen af databasen ikke indeholder SC-flaget (Supplementary Character), er dette et positivt heltal fra 0 til 65535 (0 til 0xFFFF). Hvis en værdi uden for dette område er angivet, returneres NULL. For mere information om supplerende tegn, se Collation og Unicode Support.
Når samlingen af databasen understøtter SC-flaget, er dette et positivt heltal fra 0 til 1114111 (0 til 0x10FFFF). Hvis en værdi uden for dette område er angivet, returneres NULL.
Her er et eksempel på, hvad der sker, hvis vi går uden for rækkevidden af samlingen af databasen.
SELECT NCHAR(65536) AS Result;
Resultat:
+----------+ | Result | |----------| | NULL | +----------+
I dette tilfælde indeholder databasen ikke SC-flaget (Supplementary Character) og derfor 65536
er uden for rækkevidde og NULL
returneres for den værdi.
Returtyper
Det er også værd at bemærke, at returtypen for denne funktion er nchar(1) når standarddatabasen ikke understøtter supplerende tegn og nvarchar(2) når det gør det.