Tipos de datos

Cada columna de una tabla de una base de datos de MicrosoftSQL Server Compact 4.0 admite un conjunto de tipos de datos que especifica el que puede contener la columna.

Nota

Puede haber pequeñas diferencias entre MicrosoftSQL Server y SQL Server Compact 4.0 en la forma de promover los tipos de datos cuando la ejecución de una función produce un desbordamiento o subdesbordamiento.

SQL Server Compact 4.0 admite los siguientes tipos de datos.

Tipo de datos

Descripción

bigint

Datos enteros (número entero) de –2^63 (–9.223.372.036.854.775.808) a 2^63–1 (9.223.372.036.854.775.807). El tamaño de almacenamiento es de 8 bytes.

integer

Datos enteros (número entero) de –2^31 (–2.147.483.648) a 2^31–1 (2.147.483.647).

El tamaño de almacenamiento es de 4 bytes.

smallint

Datos enteros de –32.768 a 32.767. El tamaño de almacenamiento es de 2 bytes.

tinyint

Datos enteros de 0 a 255. El tamaño de almacenamiento es de 1 byte.

bit

Datos enteros con el valor 0 ó 1.

El tamaño de almacenamiento es de 1 bit.

numeric (p, s)

Synonyms:

decimal(p,s) and dec (p,s)

Datos numéricos de escala y precisión fija de –10^38+1 a 10^38–1. La variable p especifica la precisión y puede variar entre 1 y 38. La variable s especifica la escala y puede variar entre 0 y p.

El tamaño de almacenamiento es de 19 bytes.

money

Valores de datos de moneda de (–2^63/10000) (–922.337.203.685.477,5808) a 2^63–1 (922.337.203.685.477,5807), con una precisión de una diezmilésima de la unidad monetaria. El tamaño de almacenamiento es de 8 bytes.

float

Datos numéricos de punto flotante de –1,79E +308 a 1,79E+308

El tamaño de almacenamiento es de 8 bytes.

real

Datos numéricos de precisión flotante de –3,40E+38 a 3,40E+38.

El tamaño de almacenamiento es de 4 bytes.

datetime

Datos de fecha y hora desde el 1 de enero de 1753 hasta el 31 de diciembre de 9999, con una precisión de una tricentésima de segundo o 3,33 milisegundos. Los valores se redondean en incrementos de 0,000, 0,003 ó 0,007 milisegundos.

Se almacenan como dos enteros de 4 bytes. Los primeros 4 bytes almacenan el número de días antes o después de base date, 1 de enero de 1900. La fecha base es la fecha de referencia del sistema. No se permiten valores datetime anteriores al 1 de enero de 1753. Los otros 4 bytes almacenan la hora del día representada como el número de milisegundos después de la medianoche. Los segundos tienen un intervalo válido de 0 a 59.

FormatoEjemplo
aaaa/mm/ddhh:mm:ss1947/08/15 03:33:20
mm/dd/aaaahh:mm:ss04/15/1947 03:33:20
dd mmm aaaa hh:mm:ss15 ene 1947 03:33:20
dd mmmm aaaa h:mm:ss15 enero 1947 03:33:20

national character(n)

Synonym:nchar(n)

Datos Unicode de longitud fija con una longitud máxima de 4000 caracteres. La longitud predeterminada es 1. El tamaño de almacenamiento, en bytes, es el doble del número de caracteres especificado.

national character varying(n)

Synonym:nvarchar(n)

Datos Unicode de longitud variable con una longitud entre 1 y 4000 caracteres. La longitud predeterminada es 1. El tamaño de almacenamiento, en bytes, es el doble del número de caracteres especificado.

ntext¹

Datos Unicode de longitud variable con una longitud máxima de (2^30–2)/2 (536.870.911) caracteres. El tamaño de almacenamiento, en bytes, es el doble del número de caracteres especificado.

NotaNota
ntext ya no se admite en funciones de cadena.

nchar

Datos Unicode de longitud fija de n caracteres. n debe ser un valor comprendido entre 1 y 4.000. El tamaño de almacenamiento es el doble de n bytes.

binary(n)

Datos binarios de longitud fija con una longitud máxima de 8000 bytes. La longitud predeterminada es 1.

El tamaño de almacenamiento es fijo y corresponde a la longitud en bytes declarada en el tipo.

varbinary(n)

Datos binarios de longitud variable con una longitud máxima de 8000 bytes. La longitud predeterminada es 1.

El tamaño de almacenamiento varía. Es la longitud del valor en bytes.

image¹

Datos binarios de longitud variable con una longitud máxima de 2^30–1 (1.073.741.823) bytes.

El tamaño de almacenamiento es la longitud del valor en bytes.

uniqueidentifier

Identificador único global (GUID). El tamaño de almacenamiento es de 16 bytes.

IDENTITY [(s, i)]

Es una propiedad de una columna de datos, no un tipo de datos distintivo.

Para las columnas de identidad, solo se pueden utilizar las columnas de datos de los tipos de datos enteros. Una tabla solo puede tener una columna de identidad. Se puede especificar un valor de inicialización y de incremento, y la columna no se puede actualizar.

s (inicialización) = valor inicial

i(incremento) = valor de incremento

ROWGUIDCOL

Es una propiedad de una columna de datos, no un tipo de datos distintivo. Es una columna de una tabla definida con el tipo de datos uniqueidentifier. Una tabla solo puede tener una columna ROWGUIDCOL.

Timestamp/rowversion

Número binario único generado automáticamente.

El tamaño de almacenamiento es de 8 bytes.

¹Los datos ntext e image se almacenan en una nueva página de datos si el número de bytes supera los 256 en SQL Server Compact 4.0. Esto puede afectar al grado de compactación de una base de datos, ya que las bases de datos de SQL Server Compact 4.0 se compactan por páginas, no por bytes.

Para obtener más información acerca de los tipos de datos de SQL Server que requieren conversión en SQL Server Compact 4.0, vea Diferencias entre SQL Server Compact y SQL Server.