En SQL Server, puede usar T-SQL NCHAR()
función para devolver el carácter Unicode basado en el código entero especificado.
Proporciona el código entero como argumento y la función devolverá el carácter Unicode según lo definido por el estándar Unicode.
Sintaxis
La sintaxis es así:
NCHAR ( integer_expression )
Donde integer_expression
es el número entero para el que desea que se devuelva el carácter Unicode.
Ejemplo 1:uso básico
Aquí hay un ejemplo básico para demostrarlo:
SELECT NCHAR(123) AS Result;
Resultado:
+----------+ | Result | |----------| | { | +----------+
Ejemplo 2:fuera de rango
La documentación de Microsoft establece lo siguiente sobre el rango de enteros aceptables:
Cuando la intercalación de la base de datos no contiene el indicador de caracteres complementarios (SC), se trata de un número entero positivo de 0 a 65535 (0 a 0xFFFF). Si se especifica un valor fuera de este rango, se devuelve NULL. Para obtener más información acerca de los caracteres complementarios, consulte Intercalación y Compatibilidad con Unicode.
Cuando la intercalación de la base de datos admite el indicador SC, se trata de un número entero positivo de 0 a 1114111 (0 a 0x10FFFF). Si se especifica un valor fuera de este rango, se devuelve NULL.
Aquí hay un ejemplo de lo que sucede si salimos del rango de la intercalación de la base de datos.
SELECT NCHAR(65536) AS Result;
Resultado:
+----------+ | Result | |----------| | NULL | +----------+
En este caso, la base de datos no contiene el indicador de caracteres complementarios (SC) y, por lo tanto, 65536
está fuera de rango y NULL
se devuelve por ese valor.
Tipos de devolución
También vale la pena señalar que el tipo de retorno de esta función es nchar(1) cuando la base de datos predeterminada no admite caracteres complementarios y nvarchar(2) cuando lo hace.