Search This Blog

Friday, February 11, 2011

Para que sirve la N en SQL Server

Hace poco tuve la oportunidad de asistir a una conferencia sobre SQL Server y BI, quería ver si quizá había algo nuevo para ver y/o aprender, durante el proceso de la misma, el speaker usaba con mucha frecuencia los asistentes de consultas, el asistente siempre anteponía la letra N a las cadenas de texto, de la siguiente manera (Ejemplo)

Ejemplo de codigo
  1. Select * from CM_Bitacora
  2. where observaciones = N'Prueba 2'

Recuerdo que un asistente pregunto el porque de la letra N en las consultas, la respuesta por parte del speaker me pareció la verdad un poco injusta, ya que al no saber, prefirió asegurar que esto era un Best Practice de diseño de consultas.

Pues no, la letra N no se trata de un Best Practice para diseño de consultas en TSQL, la letra N corresponde a un “CAST”, muchas personas me han preguntado la diferencia entre VARCHAR y NVARCHAR, bien, la diferencia entre estos 2 tipos de datos es la misma diferencia que hay entre usar la N o no usarla.

Varchar equivale a Variable-Lenght Character String, es decir, una cadena de caracteres de tamaño variable.

NVARCHAR, no es mas que un VARCHAR Unicode, es decir, un VARCHAR que soporta caracteres de 2 bytes, la idea de este tipo de datos es el poder soportar caracteres que no hacen parte del idioma ingles, como por ejemplo, querer guardar nombres en Ingles y en Japonés, o en Mandarín…

En conclusión, la letra N que se antepone a las cadenas de caracteres, simplemente convierten la cadena en UNICODE (Estándar de la industria)

Unicode permite garantizar el estándar de escritura, ya que en Unicode existe una representación numérica única para cada carácter.

Para saber mas acerca de Unicode visita http://es.wikipedia.org/wiki/Unicode

LinkWithin

Related Posts Plugin for WordPress, Blogger...