You are on page 1of 9

Tipos de datos de Microsoft SQL Server

Grupo Tipo de dato bigint int smallint tinyint bit Intervalo De -263 (-9.223.372.036.854.775.808) a 263 - 1 (9.223.372.036.854.775.807) De -231 (-2.147.483.648) a 231 - 1 (2.147.483.647) De -2
15

Almacenamiento 8 bytes 4 bytes 2 bytes 1 byte 2 bytes

(-32.768) a 2

15

- 1 (32.767)

De 0 a 255 Tipo de datos entero que puede aceptar los valores 1, 0 NULL

Numricos exactos decimal, numeric, decimal (p, s)

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. Precisin 1 - 9: 5 bytes

Con precisin mxima 10 38 +1 y 1038 - 1 money smallmoney float Numricos aproximados real datetime Fecha y hora smalldatetime char (n) Tipos de datos que representan valores monetarios o de moneda: de 922.337.203.685,4775808 a 922.337.203.685,4775807 De - 214,7483648 a 214,7483647 De - 1,79E+308 a -2,23E-308, 0 y de 2,23E-308 a 1,79E+308 8 bytes 4 bytes Depende del valor de n

De - 3,40E + 38 a -1,18E - 38, 0 y de 1,18E - 38 4 Bytes a 3,40E + 38 Del 1 de enero de 1753 hasta el 31 de diciembre de 9999 Del 1 de enero de 1900 hasta el 6 de junio de 2079 Caracteres no Unicode de longitud fija, con una longitud de n bytes. n debe ser un valor entre 1 y 8.000 n bytes

varchar (n) Cadenas de caracteres

Caracteres no Unicode de longitud variable. n indica que el tamao de almacenamiento mximo n bytes (aprox.) es de 231 - 1 bytes En desuso, sustituido por varchar.

text

Datos no Unicode de longitud variable con una longitud mxima de 2 31 - 1 (2.147.483.647) caracteres Datos de carcter Unicode de longitud fija, con n caracteres. n debe estar comprendido entre 1 y 4.000

max bytes (aprox.)

nchar (n)

2 * n bytes

Cadenas de caracteres unicode

nvarchar (n)

Datos de carcter Unicode de longitud variable. n 2 * n bytes + 2 indica que el tamao mximo de almacenamiento bytes 31 es 2 - 1 bytes En desuso, sustituido por nvarchar.

ntext (n)

Datos Unicode de longitud variable con una longitud mxima de 2 30 - 1 (1.073.741.823)

2 * n bytes

caracteres binary (n) Datos binarios de longitud fija con una longitud de n bytes, donde n es un valor que oscila entre 1 y 8.000 Datos binarios de longitud variable. n indica que 31 el tamao de almacenamiento mximo es de 2 - 1 bytes En desuso, sustituido por varbinary. image Datos binarios de longitud variable desde 0 hasta 231 - 1 (2.147.483.647) bytes Tipo de datos para las variables o para los parmetros de resultado de los procedimientos almacenados que contiene una referencia a un cursor. Las variables creadas con el tipo de datos cursor aceptan NULL Tipo de datos que expone nmeros binarios nicos generados automticamente en una base de datos. El tipo de datos timestamp es simplemente un nmero que se incrementa y no conserva una fecha o una hora Tipo de datos que almacena valores de varios tipos de datos aceptados en SQL Server, excepto text, ntext, image, timestamp y sql_variant Es un GUID (Globally Unique Identifier, Identificador nico Global) Es un tipo de datos especial que se puede utilizar para almacenar un conjunto de resultados para su procesamiento posterior. table se utiliza principalmente para el almacenamiento temporal de un conjunto de filas devuelto como el conjunto de resultados de una funcin con valores de tabla Almacena datos de XML. Puede almacenar instancias de xml en una columna o una variable de tipo xml 16 bytes n bytes

Cadenas binarias

varbinary (n)

n bytes

cursor

timestamp

8 bytes

sql_variant Otros tipos de datos uniqueidentifier

table

xml

TIPOS DE DATOS MYSQL


Tipos numricos:

Existen tipos de datos numricos, que se pueden dividir en dos grandes grupos, los que estn en coma flotante (con decimales) y los que no. TinyInt: es un nmero entero con o sin signo. Con signo el rango de valores vlidos va desde -128 a 127. Sin signo, el rango de valores es de 0 a 255 Bit Bool: un nmero entero que puede ser 0 1 SmallInt: nmero entero con o sin signo. Con signo el rango de valores va desde -32768 a 32767. Sin signo, el rango de valores es de 0 a 65535. MediumInt: nmero entero con o sin signo. Con signo el rango de valores va desde 8.388.608 a 8.388.607. Sin signo el rango va desde 0 a16777215. Integer, Int: nmero entero con o sin signo. Con signo el rango de valores va desde 2147483648 a 2147483647. Sin signo el rango va desde 0 a 429.4967.295 BigInt: nmero entero con o sin signo. Con signo el rango de valores va desde 9.223.372.036.854.775.808 a 9.223.372.036.854.77 5.807. Sin signo el rango va desde 0 a 18.446.744.073.709.551.615. Float: nmero pequeo en coma flotante de precisin simple. Los valores vlidos van desde -3.402823466E+38 a -1.175494351E-38, 0 y desde 1.175494351E-38 a 3.402823466E+38. xReal, Double: nmero en coma flotante de precisin doble. Los valores permitidos van desde -1.7976931348623157E+308 a -2.2250738585072014E -308, 0 y desde 2.2250738585072014E -308 a 1.7976931348623157E+308 Decimal, Dec, Numeric: Nmero en coma flotante desempaquetado. El nmero se almacena como una cadena

Tipo de Campo TINYINT SMALLINT MEDIUMINT INT INTEGER BIGINT FLOAT(X) FLOAT DOUBLE DOUBLE PRECISION REAL DECIMAL(M,D

Tamao de Almacenamiento 1 byte 2 bytes 3 bytes 4 bytes 4 bytes 8 bytes 4 8 bytes 4 bytes 8 bytes 8 bytes 8 bytes M+2 bytes s D >

0, M+1 bytes s D =0 M+2 bytes if D > NUMERIC(M,D) 0, M+1 bytes if D =0

2 Tipos fecha:

A la hora de almacenar fechas, hay que tener en cuenta que Mysql no comprueba de una manera estricta si una fecha es vlida o no. Simplemente comprueba que el mes esta comprendido entre 0 y 12 y que el da esta comprendido entre 0 y 31. Date: tipo fecha, almacena una fecha. El rango de valores va desde el 1 de enero d 1001 el al 31 de diciembre de 9999. El formato de almacenamiento es de ao -mes-dia DateTime: Combinacin de fecha y hora. El rango de valores va desde el 1 de enero del 1001 a las 0 horas, 0 minutos y 0 segundos al 31 de diciembre del 9999 a las 23 horas, 59 minutos y 59 segundos. El formato de almacenamiento es de ao -mes-dia horas:minutos:segundos TimeStamp: Combinacin de fecha y hora. El rango va desde el 1 de enero de 1970 al ao 2037. El formato de almacenamiento depende del tamao del campo:

Tamao 14 12 8 6 4 2

Formato AoMesDiaHoraMinutoSegundo aaaammddhhmmss AoMesDiaHoraMinutoSegundo aammddhhmmss oMesDia aaaammdd AoMesDia aammdd AoMes aamm Ao aa

Time: almacena una hora. El rango de horas va desde -838 horas, 59 minutos y 59 segundos a 838, 59 minutos y 59 segundos. El formato de almacenamiento es de 'HH:MM:SS' Year: almacena un ao. El rango de valores permitidos va desde el ao 1901 al ao 2155. El campo puede tener tamao dos o tamao 4 dependiendo de si queremos almacenar el ao con dos o cuatro dgitos.

Tipo de Campo DATE DATETIME TIMESTAMP TIME

Tamao de Almacenamiento 3 bytes 8 bytes 4 bytes 3 bytes

YEAR

1 byte

3 Tipos de cadena: Char(n): almacena una cadena de longitud fija. La cadena podr contener desde 0 a 255 caracteres. VarChar(n): almacena una cadena de longitud variable. La cadena podr contener desde 0 a 255 caracteres.

Dentro de los tipos de cadena se pueden distinguir otros dos subtipos, los tipo Test y los tipo BLOB (Binary large Object)

La diferencia entre un tipo y otro es el tratamiento que reciben a la hora de realizar ordenamientos y comparaciones. Mientras que el tipo test se ordena sin tener en cuenta las Maysculas y las minsculas, el tipo BLOB se ordena tenindolas en cuenta. Los tipos BLOB se utilizan para almacenar datos binarios como pueden ser ficheros.

TinyText y TinyBlob: Columna con una longitud mxima de 255 caracteres. Blob y Text: un texto con un mximo de 65535 caracteres. MediumBlob y MediumText: un texto con un mximo de 16.777.215 caracteres. LongBlob y LongText: un texto con un mximo de caracteres 4.294.967.295. Hay que tener en cuenta que debido a los protocolos de comunicacin los paquete pueden tener un s mximo de 16 Mb. Enum: campo que puede tener un nico valor de una lista que se especifica. El tipo Enum acepta hasta 65535 valores distintos Set: un campo que puede contener ninguno, uno varios valores de una lista. La lista puede tener un mximo de 64 valores.

Tipo de campo CHAR(n) VARCHAR(n) TINYBLOB, TINYTEXT BLOB, TEXT MEDIUMBLOB, MEDIUMTEXT LONGBLOB, LONGTEXT ENUM('value1','value2',...) SET('value1','value2',...)

Tamao de Almacenamiento n bytes n +1 bytes Longitud+1 bytes Longitud +2 bytes Longitud +3 bytes Longitud +4 bytes 1 dos bytes dependiendo del nmero de valores 1, 2, 3, 4 8 bytes, dependiendo del nmero de valores

TIPOS DE DATOS XML


Tipo de datos
string

Aspectos
length, pattern, maxLength, minLength, enumeration, whiteSpace

Descripcin
Representa cadenas de caracteres.

boolean decimal

pattern, whiteSpace enumeration, pattern, totalDigits, fractionDigits, minInclusive, maxInclusive, maxExclusive, whiteSpace

Representa valores booleanos, que son true o false. Representa nmeros de precisin arbitraria.

float

pattern, enumeration, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Representa nmeros de punto flotante de 32 bits de precisin simple.

double

pattern, enumeration, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Representa nmeros de punto flotante de 64 bits de doble precisin.

duration

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Representa una duracin de tiempo. El modelo de duration es PnYnMnDTnHnMnS , donde nY representa el nmero de aos, nM el nmero de meses, nD el nmero de das, T el separador de fecha y hora, nH el nmero de horas, nM el nmero de minutos y nS el nmero de segundos.

dateTime

enumeration, pattern, minInclusive,

Representa una instancia especfica de tiempo.

minExclusive, maxInclusive, maxExclusive, whiteSpace

El modelo de dateTime es CCYY-MM-DDThh:mm:ss donde CC representa el siglo, YY el ao, MM el mes y DD el da, precedido por un carcter negativo (-) inicial opcional para indicar un nmero negativo. Si se omite el carcter negativo, se supone positivo (+). La T es el separador de fecha y hora, y hh, mm y ss representan la hora, minutos y segundos, respectivamente. Se pueden utilizar dgitos adicionales para aumentar la precisin de los segundos decimales, si se desea. Por ejemplo, se admite el formato

ss.ss... con cualquier nmero de dgitos despus del


separador decimal. Es opcional la parte de segundos decimales. Esta representacin puede estar seguida inmediatamente por una "Z" para indicar el horario universal coordinado (UTC) o la zona horaria. Por ejemplo, la diferencia entre la hora local y el horario universal coordinado, seguido por un signo, + o -, seguido por la diferencia con respecto a UTC representada como hh:mm (se requieren los minutos). Si se incluye la zona horaria, tanto las horas como los minutos deben estar presentes. time enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace date enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace gYearMonth enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, El modelo de gYearMonth es CCYY-MM con un indicador Representa un mes gregoriano especfico de un ao gregoriano especfico. Conjunto de instancias no peridicas de un mes de duracin. El modelo de date es CCYY-MM-DD con un indicador opcional de zona horaria como el de dateTime. Representa una fecha de calendario. El modelo de time es hh:mm:ss.sss con un indicador opcional de zona horaria. Representa una instancia de tiempo que se repite cada da.

whiteSpace gYear enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace gMonthDay enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

opcional de zona horaria. Representa un ao gregoriano. Conjunto de instancias no peridicas de un ao de duracin. El modelo de gYear es CCYY con un indicador opcional de zona horaria como el de dateTime.

Representa una fecha gregoriana determinada que se repite, especficamente un da del ao, por ejemplo el tres de mayo. Un gMonthDay es el conjunto de fechas de calendario. Especficamente, es un conjunto de instancias de periodicidad anual y de un da de duracin. El modelo de gMonthDay es --MM-DD con un indicador opcional de zona horaria como el de date.

gDay

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Representa un da gregoriano que se repite, especficamente un da del mes, por ejemplo el quinto. Un gDay es el espacio de un conjunto de fechas del calendario. Especficamente, es un conjunto de instancias de periodicidad mensual y de un da de duracin. El modelo de gDay es ---DD con un indicador opcional de zona horaria como el de date.

gMonth

enumeration, pattern, minInclusive, minExclusive, maxInclusive, maxExclusive, whiteSpace

Representa un mes gregoriano que se repite cada ao. Un gMonth es el espacio de un conjunto de meses del calendario. Especficamente, es un conjunto de instancias peridicas anuales de un mes de duracin. El modelo de gMonth es --MM-- con un indicador opcional de zona horaria como el de date.

hexBinary

length, pattern,

Representa datos binarios arbitrarios codificados en

maxLength, minLength, hexadecimal. hexBinary es el conjunto de secuencias de enumeration, whiteSpace longitud finita de octetos binarios. Cada octeto binario se codifica como una tupla de caracteres que se compone de dos dgitos hexadecimales ([0-9a-fA-F]) y representa el cdigo del octeto. base64Binary length, pattern, Representa datos binarios arbitrarios codificados en

maxLength, minLength, Base64. base64Binary es el conjunto de secuencias de enumeration, whiteSpace anyURI length, pattern, Representa un identificador URI como lo define RFC 2396. longitud finita de octetos binarios.

maxLength, minLength, Un valor anyURI puede ser absoluto o relativo, y puede enumeration, whiteSpace QName length, enumeration, pattern, maxLength, Representa un nombre completo, que se compone de un prefijo y un nombre local separados por un signo de dos tener un identificador de fragmento opcional.

minLength, whiteSpace puntos. Tanto el prefijo como los nombres locales deben ser un NCName. El prefijo debe estar asociado con una referencia a un identificador URI de espacio de nombres, mediante una declaracin de espacio de nombres. NOTATION length, enumeration, pattern, maxLength, minLength, whiteSpace Representa un tipo de atributo NOTATION. Conjunto de QNames.

You might also like