Tipos de Datos SQL Server 2008

download Tipos de Datos SQL Server 2008

of 29

Transcript of Tipos de Datos SQL Server 2008

TIPOS DE DATOS SQL SERVER 2008

Categoras de tipos de datosLos tipos de datos de SQL Server se organizan en las siguientes categoras: Numricos exactos Cadenas de caracteres Unicode Numricos aproximados Cadenas binarias Fecha y hora Otros tipos de datos Cadenas de caracteres

En SQL Server, segn las caractersticas de almacenamiento, algunos tipos de datos estn designados como pertenecientes a los siguientes grupos: Tipos de datos de valores grandes: varchar(max), nvarchar(max) y varbinary(max) Tipos de datos de objetos grandes: text, ntext, image, varchar(max), nvarchar(max), varbinary(max) y xml

Informacin tomada de : http://msdn.microsoft.com/es-es/library/ms187752.aspx

Numricos exactosbigint numeric bit smallint decimal smallmoney int tinyint money

int, bigint, smallint y tinyint[Este tema pertenece a la documentacin de la versin preliminar y est sujeto a cambios en versiones futuras. Los temas en blanco se incluyen como marcadores de posicin. NOTA: Con el fin de proporcionarle contenido adicional en distintos idiomas, Microsoft ofrece documentacin localizada mediante mtodos de traduccin alternativos. Para esta versin preliminar, parte del contenido de esta documentacin se ha traducido mediante el uso de estos mtodos. Microsoft es consciente de que los documentos traducidos de esta forma no son siempre perfectos, por lo que es posible que este artculo contenga errores de vocabulario, sintaxis o gramtica. La versin final de este contenido se traducir por los mtodos tradicionales y la calidad ser igual que la de las versiones anteriores.] Tipos de datos numricos exactos que utilizan datos enteros. Tipo de datos bigint int smallint tinyint Intervalo De -2^63 (-9.223.372.036.854.775.808) a 2^63-1 (9.223.372.036.854.775.807) De -2^31 (-2.147.483.648) a 2^31-1 (2.147.483.647) De -2^15 (-32.768) a 2^15-1 (32.767) De 0 a 255 Almacenamiento 8 bytes 4 bytes 2 bytes 1 byte

NotasEl tipo de datos int es el principal tipo de datos de valores enteros de SQL Server. El tipo de datos bigint est pensado para utilizarse cuando los valores enteros pueden exceder el intervalo admitido por el tipo de datos int. bigint se encuentra entre smallmoney e int en el grfico de prioridad de tipo de datos. Las funciones slo devuelven bigint si la expresin de parmetro es un tipo de datos bigint. SQL Server no convierte automticamente otros tipos de datos enteros (tinyint, smallint e int) en bigint. Advertencia: Cuando se utilizan los operadores aritmticos +, -, *, / o % para llevar a cabo conversiones implcitas o explcitas de valores constantes int, smallint, tinyint o bigint en tipos de datosfloat, real, decimal o numeric, las reglas que aplica SQL Server al calcular el tipo de datos y la precisin de los resultados de la expresin varan dependiendo de si la consulta tiene parmetros automticos o no.

Por lo tanto, expresiones similares en las consultas pueden generar resultados diferentes. Cuando una consulta no tiene parmetros automticos, el valor constante primero se convierte en numeric, cuya precisin es lo suficientemente grande como para conservar el valor de la constante, antes de realizar la conversin al tipo de datos especificado. Por ejemplo, el valor constante 1 se convierte en numeric (1, 0) y el valor constante 250 se convierte en numeric (3, 0). Cuando una consulta tiene parmetros automticos, el valor constante siempre se convierte en numeric (10, 0) antes de convertirse en el tipo de datos final. Cuando se utiliza el operador /, no slo puede diferir la precisin del tipo de los resultados entre consultas similares, sino que tambin puede variar el valor de los resultados. Por ejemplo, el valor de los resultados de una consulta con parmetros automticos que incluye la expresin SELECT CAST (1.0 / 7 AS float) variar con respecto a la misma consulta cuando no tenga parmetros automticos, puesto que los resultados de la primera se truncarn para ajustarse al tipo de datos numeric (10, 0). Para obtener ms informacin acerca de las consultas con parmetros, vea Simple Parameterization.

decimal y numeric[Este tema pertenece a la documentacin de la versin preliminar y est sujeto a cambios en versiones futuras. Los temas en blanco se incluyen como marcadores de posicin. NOTA: Con el fin de proporcionarle contenido adicional en distintos idiomas, Microsoft ofrece documentacin localizada mediante mtodos de traduccin alternativos. Para esta versin preliminar, parte del contenido de esta documentacin se ha traducido mediante el uso de estos mtodos. Microsoft es consciente de que los documentos traducidos de esta forma no son siempre perfectos, por lo que es posible que este artculo contenga errores de vocabulario, sintaxis o gramtica. La versin final de este contenido se traducir por los mtodos tradicionales y la calidad ser igual que la de las versiones anteriores.] Tipos de datos numricos que tienen precisin y escala fijas. decimal[ (p[ ,s] )] y numeric[ (p[ ,s] )] Nmeros de precisin y escala fijas. Cuando se utiliza la precisin mxima, los valores vlidos se sitan entre - 10^38 +1 y 10^38 - 1. Los sinnimos de ISO para decimal son de tipodec y dec(p, s). numeric es funcionalmente equivalente a decimal.

p (precisin) El nmero total mximo de dgitos decimales que se puede almacenar, tanto a la izquierda como a la derecha del separador decimal. La precisin debe ser un valor comprendido entre 1 y la precisin mxima de 38. La precisin predeterminada es 18. s (escala) El nmero mximo de dgitos decimales que se puede almacenar a la derecha del separador decimal. La escala debe ser un valor comprendido entre 0 y p. Slo es posible especificar la escala si se ha especificado la precisin. La escala predeterminada es 0; por lo tanto, 0