SQL Server tipos de datos

Más que escribir y describir sobre los tipos de datos en SQL Server, en este post pretendo aclarar o definir algunas curiosidades y/o novedades de los tipos de datos en las nuevas versiones de SQL Server, como por ejemplo la 2008 R2 y la recién estrenada 2012.

Tipos de datos deprecados (obsoletos)

Desde SQL Server 2008 R2 los tipos de datos timestamp (hablaré más adelante sobre él) y text (ntext también) se encuentran obsoletos y en futuras versiones dejaran de existir (en la 2012 aún existen pero solo por mera compatibilidad).

Timestamp

Los tipos de datos timestamp para los que estamos acostumbrados a MySQL pensamos que va a hacer lo mismo que en este tipo de servidores, actualizar la fecha cada vez que se inserta o actualiza una fila. La primera diferencia es que timestamp en SQL Server nunca ha almacenado una fecha, es un valor entero único pero no corresponde con una fecha, en las nuevas versiones el tipo de campo que lo viene a sustituir es el uniqueid.

Text y Ntext

Los tipos de campos text y ntext ya no tienen sentido desde que los varchar y nvarchar puede llegar a tener tamaños de hasta 2 Tb con varchar(MAX). Por defecto el tamaño máximo es de 4 mil bytes para varchar y 2 mil para nvarchar (la diferencia entre ‘n’ o no es que los valores nchar y nvarchar ocupan el doble de bytes por caracter para poder almacenar todo tipo de caracteres internacionales)

Valores enteros

Como bien sabéis en SQL Server no existe lo que en MySQL se conoce como unsigned (sin signo) por ello todos los valores enteros van desde su correspondiente negativo al positivo, para especificar que sean positivos solamente lo tenemos que hacer mediante restricciones.

Valores decimales

Hay un detalle en el tipo de dato decimal que me llamó la atención, por ejemplo, pongamos decimal(8,2) ¿qué significa? significa que el número tendrá una precisión de 2 dígitos después de la coma y 6 dígitos delante, haciendo un total de 8 dígitos.

Espero que este breve tour por los tipos de datos de SQL Server os sirva para actualizar vuestras bases de datos a las futuras versiones de este sistema o plataforma de administración.

Comentarios