UNIVERSIDAD TECNICA DE AMBATO
FACULTAD DE INGENIERIAS EN SISTEMAS INDUSTRIAL E ELECTRONICA
NOMBRE: ANDRES PINOS
FECHA: 23/11/2015
TEMA: TIPOS DE DATOS EN LENGUAJE SQL
Tipos de datos Mysql
MySQL soporta varios tipos de datos, que pueden ser agrupados en trescategorías: numéricos, fecha y
hora, y cadenas (caracteres).. Los tipos de datos soportados por MySQL son listados a continuación las
siguientes convenciones son usadas en las descripciones:
M - Indica el tamaño máximo que se puede desplegar (mostrar). El mayor valor legal es de 255.
D - Aplica a los datos de punto flotante e indica el número de digitos que siguen alpunto decimal. El valor
máximo posible es de 30, pero no debe ser mayor de M-2.
Los paréntesis cuadrados indican que un elemento es opcional.
Se debe notar que cuando se especifica ZEROFILL
para una columna, MySQ La gregará automáticamente el atributo UNSIGNED.
Tipos numéricos:
TINYINT[(M)] [UNSIGNED] [ZEROFILL]
Un entero muy pequeño. Su rango es de -128 a 127. Para enteros sin signo el rango es de 0 a 255.
BIT y BOOL
Es un sinónimo para TINYINT(1).
SMALLINT[(M)] [UNSIGNED] [ZEROFILL
]Un entero pequeño. Su rango es de -32768 a 32767. Para enteros sin signo el rango es de 0 a 65535.
MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
Un entero de tamaño medio. Su rango es de -8388608 a 8388607. Para enteros sin signo el rango es de 0
a 16777215.
INT[(M)] [UNSIGNED] [ZEROFILL]Un entero normal. Su rango es de -2147483648 a 2147483647. Para
enteros sin signo el rango es de 0 a 4294967295.
INTEGER[(M)] [UNSIGNED] [ZEROFILL]
Es un sinónimo para INT.
BIGINT[(M)] [UNSIGNED] [ZEROFILL]
Es un entero grande. Su rango es de -9223372036854775808 a9223372036854775807. Para enteros sin
signo el rango es de 0 a18446744073709551615.
FLOAT(precisión) [UNSIGNED] [ZEROFILL]
Un número de punto flotante. La precisión puede ser <=24 para un número de precisión sencilla y entre
25 y 53 para un número de doble precisión. Este tipo escomo el FLOAT y DOUBLE que se describen a
continuación. Un FLOAT(X) tiene el mismo rango que los correspondientes tipos FLOAT y DOUBLE, pero el
tamaño dedespliegue y el número de decimales no están definidos.
FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]
Un número pequeño de punto flotante (o bien, de precisión sencilla). El rango de valores permitidos es
de -3.402823466E+38 a -1.175494351E-38, 0, y de1.175494351E-38 a 3.402823466E+38. Si se usa el
modificador UNSIGNED, los valores negativos son deshabilitados. M es el tamaño de despliegue y D el
número de decimales. FLOAT sin argumentos o FLOAT(X) donde X<=24 se entiende comoun número de
punto flotante de precisión sencilla.
DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]
Un número normal de punto flotante ( o bien, de precisión doble ). El rango de valores permitidos es de -
1.7976931348623157E+308 a -2.2250738585072014E-308, 0, y de 2.2250738585072014E-308 a
1.7976931348623157E+308. Si el modificador UNSIGNED es especificado, los valores negativos son
deshabilitados. M es el tamaño de despliegue y D el número de decimales. DOUBLE sin argumentos o
FLOAT(X) donde 25 <= X <= 53 se entiende por un número de punto flotante de doble precisión.
DOUBLE PRECISION[(M,D)] [UNSIGNED] [ZEROFILL]REAL[(M,D)] [UNSIGNED] [ZEROFILL]
Son sinónimos para DOUBLE.
DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
Un número de punto flotante sin empaquetar. Como en las columnas CHAR, "sin empaquetar" significa
que el número es almacenado como una cadena con un caracter para cada digito del valor. El punto
decimal, y para números negativos el signo - no son contados en M (sin embargo se les reserva espacio).
Si D vale 0,los valores no tendrán punto decimal. El máximo rango de valores es el mismo que para
DOUBLE, pero el rango para una columna DECIMAL puede ser restringido con la elección de valores en M
y D. Si el atributo UNSIGNED es usado, los valores negativos son deshabilitados. Si D es omitido, el valor
por default es 0. Si M es omitido el valor por default es 10.
Decimal, Dec, Numeric:
Número en coma flotante desempaquetado. El número se almacena como una cadena
Tipos de cadena:
Char(n):
almacena una cadena de longitud fija. La cadena podrá contener desde 0a 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 Testy 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 Mayúsculas y las minúsculas,
el tipo BLOB se ordena teniéndolas en cuenta. Los tipos BLOB se utilizan para almacenar datos binarios
como pueden ser ficheros.
TinyText y TinyBlob:
Columna con una longitud máxima de 255 caracteres.
Blob y Text:
un texto con un máximo de 65535 caracteres.
MediumBlob y MediumText:
un texto con un máximo de 16.777.215 caracteres.
LongBlob y LongText:
un texto con un máximo de caracteres 4.294.967.295. Hay que tener en cuenta que debido a los
protocolos de comunicación los paquetes pueden tener un máximo 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 máximo
de 64 valores.
Tipos fecha:
A la hora de almacenar fechas, hay que tener en cuenta que Mysql no compruebade una manera estricta
si una fecha es válida o no. Simplemente comprueba queel mes esta comprendido entre 0 y 12 y que el
día esta comprendido entre 0 y 31.
Date:
tipo fecha, almacena una fecha. El rango de valores va desde el 1 de enerodel 1001 al 31 de diciembre de
9999. El formato de almacenamiento es de año-mes-dia
DateTime:
Combinación 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 9999a las 23 horas, 59 minutos y 59 segundos. El formato de
almacenamiento es de año-mes-dia horas:minutos: segundos
TimeStamp:
Combinación de fecha y hora. El rango va desde el 1 de enero de1970 al año 2037. El formato de
almacenamiento depende del tamaño del campo
Time:
almacena una hora. El rango de horas va desde -838 horas, 59 minutos y59 segundos a 838, 59 minutos y
59 segundos. El formato de almacenamiento es de 'HH:MM:SS'
Year:
almacena un año. El rango de valores permitidos va desde el año 1901 al año 2155. El campo puede tener
tamaño dos o tamaño 4 dependiendo de siqueremos almacenar el año con dos o cuatro dígitos.