Buscar..


Introducción

En esta sección se describen los tipos de datos que puede usar SQL Server, incluidos el rango, la longitud y las limitaciones de los datos (si corresponde).

Números exactos

Hay dos clases básicas de tipos de datos numéricos exactos: Integer , Precisión fija y Escala .

Tipos de datos enteros

  • poco
  • tinyint
  • smallint
  • En t
  • Bigint

Los enteros son valores numéricos que nunca contienen una parte fraccionaria, y siempre usan una cantidad fija de almacenamiento. El rango y los tamaños de almacenamiento de los tipos de datos enteros se muestran en esta tabla:

Tipo de datos Distancia Almacenamiento
poco 0 o 1 1 bit **
tinyint 0 a 255 1 byte
smallint -2 ^ 15 (-32,768) a 2 ^ 15-1 (32,767) 2 bytes
En t -2 ^ 31 (-2,147,483,648) a 2 ^ 31-1 (2,147,483,647) 4 bytes
Bigint -2 ^ 63 (-9,223,372,036,854,775,808) a 2 ^ 63-1 (9,223,372,036,854,775,807) 8 bytes

Tipos de datos de precisión y escala fija

  • numérico
  • decimal
  • poco dinero
  • dinero

Estos tipos de datos son útiles para representar números exactamente. Mientras los valores puedan caber dentro del rango de los valores almacenables en el tipo de datos, el valor no tendrá problemas de redondeo. Esto es útil para cualquier cálculo financiero, donde los errores de redondeo resultarán en locura clínica para los contadores.

Tenga en cuenta que decimal y numérico son sinónimos para el mismo tipo de datos.

Tipo de datos Distancia Almacenamiento
Decimal [(p [, s])] o Numérico [(p [, s])] -10 ^ 38 + 1 a 10 ^ 38 - 1 Ver tabla de precisión.

Al definir un tipo de datos decimal o numérico , es posible que deba especificar Precisión [p] y Escala [s].

La precisión es el número de dígitos que se pueden almacenar. Por ejemplo, si necesita almacenar valores entre 1 y 999, necesitará una Precisión de 3 (para mantener los tres dígitos en 100). Si no especifica una precisión, la precisión predeterminada es 18.

Escala es el número de dígitos después del punto decimal. Si necesita almacenar un número entre 0.00 y 999.99, deberá especificar una Precisión de 5 (cinco dígitos) y una Escala de 2 (dos dígitos después del punto decimal). Debe especificar una precisión para especificar una escala. La escala por defecto es cero.

La precisión de un tipo de datos decimal o numérico define el número de bytes necesarios para almacenar el valor, como se muestra a continuación:

Mesa de precisión

Precisión Bytes de almacenamiento
1 - 9 5
10-19 9
20-28 13
29-38 17

Tipos de datos fijos monetarios

Estos tipos de datos están destinados específicamente para la contabilidad y otros datos monetarios. Este tipo tiene una escala fija de 4; siempre verá cuatro dígitos después del lugar decimal. Para la mayoría de los sistemas que trabajan con la mayoría de las monedas, será suficiente usar un valor numérico con una Escala de 2. Tenga en cuenta que no se almacena ninguna información sobre el tipo de moneda representada con el valor.

Tipo de datos Distancia Almacenamiento
dinero -922,337,203,685,477.5808 a 922,337,203,685,477.5807 8 bytes
poco dinero -214,748.3648 a 214,748.3647 4 bytes

Números aproximados

  • flotar [( n )]
  • real

Estos tipos de datos se utilizan para almacenar números de punto flotante. Dado que estos tipos están destinados a contener valores numéricos aproximados solamente, no deben usarse en los casos en que cualquier error de redondeo sea inaceptable. Sin embargo, si necesita manejar números muy grandes o números con un número indeterminado de dígitos después del lugar decimal, esta puede ser su mejor opción.

Tipo de datos Distancia tamaño
flotador -1.79E + 308 a -2.23E-308, 0 y 2.23E-308 a 1.79E + 308 depende de n en la tabla de abajo
real -3.40E + 38 a -1.18E - 38, 0 y 1.18E - 38 a 3.40E + 38 4 bytes

Tabla de valores n para números flotantes . Si no se especifica ningún valor en la declaración del flotador, se utilizará el valor predeterminado de 53. Tenga en cuenta que float (24) es el equivalente de un valor real .

valor n Precisión tamaño
1-24 7 dígitos 4 bytes
25-53 15 dígitos 8 bytes

Fecha y hora

Estos tipos están en todas las versiones de SQL Server

  • fecha y hora
  • tiempo pequeño

Estos tipos están en todas las versiones de SQL Server después de SQL Server 2012

  • fecha
  • datetimeoffset
  • datetime2
  • hora

Cadenas de caracteres

  • carbonizarse
  • varchar
  • texto

Cadenas de caracteres Unicode

  • nchar
  • nvarchar
  • ntext

Cuerdas binarias

  • binario
  • varbinary
  • imagen

Otros tipos de datos

  • cursor
  • marca de tiempo
  • hierarchyid
  • identificador único
  • sql_variant
  • xml
  • mesa
  • Tipos espaciales


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow