Tipos de datos MySQL

Tipos de datos MySQL
Existen muchas tablas en una base de datos MySQL que contiene múltiples columnas o campos para almacenar diferentes tipos de datos. Es muy importante obtener el conocimiento adecuado sobre los tipos de datos compatibles de MySQL para crear la estructura de la propiedad de la tabla de la base de datos. Cada tipo de datos de MySQL puede almacenar datos de diferentes tamaños. Cada tipo de datos puede almacenar los datos en número o formato de cadena. El tamaño y los usos de los diferentes tipos de datos MySQL para crear una tabla de base de datos se han descrito en este tutorial.

Categorías de tipos de datos MySQL:

Los tipos de datos de MySQL se dividen en las siguientes categorías.

  1. Datos de cadena
  2. Datos numéricos
  3. Datos binarios de objetos grandes
  4. Datos de fecha y hora
  5. Datos espaciales
  6. Datos JSON

Los tipos de datos relacionados con cada grupo se han explicado a continuación con ejemplos.

Tipo de datos de cadena:

El campo de tipo de datos de cadena puede contener cualquier caracteres alfabéticos y numéricos para definir una cadena de texto pequeño y grande, como nombre, dirección, descripción, etc. El contenido binario, como una imagen o archivo de audio, se puede almacenar en el campo del tipo de datos de cadena. Los tipos de datos de cadena admitidos en MySQL se han mostrado a continuación con tamaño y descripción.

Tipo de datos de cadena Descripción
Char (n) Se usa para almacenar una cadena de un número fijo de caracteres. Puede contener un máximo de 255 caracteres. El valor del argumento define la longitud de la cadena. Si el valor del campo Char contiene menos carácter que el norte valor, entonces se agregará el valor de espacio para los caracteres restantes.
Varchar (n) Se utiliza para almacenar una cadena del número variable de caracteres. También puede contener un máximo de 255 caracteres. El valor del argumento define la longitud de la cadena. No desperdicia espacio como el tipo de datos de char.
TinyText (N) Funciona como un tipo de datos Varchar y puede almacenar un máximo de 255 caracteres.
Texto (n) Se utiliza para almacenar valores de cadena más grandes que contienen un máximo de 65,535 caracteres.
MediaText (N) Almacena un valor de texto más grande que el tipo de datos de texto que puede contener un máximo de 16,777,215 caracteres.
Textexto (n) Almacena valores de texto más grandes que el tipo de datos de Text Media que contiene un máximo de 4 GB o 4,294,967,295 caracteres.
Binario (n) Se utiliza para almacenar caracteres binarios, y la longitud de estos datos es fija. Puede almacenar un máximo de 255 caracteres.
Varbinary (N) Funciona como el tipo de datos binarios, pero su longitud no es fija.
Enum (v1, v2, v3, ..., vn) La forma completa de enumeración se utiliza para seleccionar un valor único de múltiples valores. El índice numérico se usa para definir los valores de cadena. Puede tener un máximo de 65,535 valores.
Set (v1, v2, v3, ..., vn) Se usa para seleccionar 0 o más valores de la lista de valores. Puede almacenar un máximo de 64 valores.

Tipo de datos numéricos:

El tipo de campo de datos numéricos almacena el número completo, como ID, número de seguridad, etc., o el número fraccional, como Price, CGPA, etc. Diferentes tipos de tipos de datos numéricos han descrito a continuación.

Tipo de datos numéricos Descripción
Bit (n) Se usa para almacenar valores de bits. El número de bits por valor se define por norte aquí. Puede almacenar valores de 1 a 64. El valor predeterminado es 1.
Bool/booleano Se usa para almacenar valores verdaderos o falsos. 0 El valor se considera un FALSO valor, y cualquier número no cero se considera un Verdadero valor.
Tinyint (n) Se utiliza para almacenar un valor entero de muy pequeño tamaño. Puede almacenar valores de -128 a 127 para enteros firmados y 0 a 255 para un entero sin firmar. El norte Define la longitud del número.
Smallint (N) Se utiliza para almacenar un valor entero de tamaño pequeño. Puede almacenar valores de --32768 a 32767 para enteros firmados y 0 a 65535 para un entero sin firmar. El norte Define la longitud del número.
Mediumint (N) Se utiliza para almacenar un valor entero de tamaño mediano. Puede almacenar valores de -8388608 a 8388607 para enteros firmados y 0 a 16777215 para un entero sin firmar. El norte Define la longitud del número.
Int (n)/ entero (n) Se usa para almacenar un valor entero. Puede almacenar valores de -2147483648 a 2147483647 para enteros firmados y 0 a 4294967295 para un entero sin firmar. El norte Define la longitud del número.
Bigint (N) Se utiliza para almacenar un valor entero de gran tamaño. Puede almacenar los valores de -9223372036854775808 a 9223372036854775807 para enteros firmados y 0 a 18446744073709551615 para un Integer Unsigned. El norte Define la longitud del número.
Flotante (n, d) Se utiliza para almacenar números fraccionales de tamaño pequeño. Aquí, norte Define la longitud del número entero y d Define la longitud del número después del punto decimal. Requiere 2 bytes para almacenar los datos, y se pueden agregar 24 dígitos después del punto decimal. El valor predeterminado de n es 10 y es 2.
Doble (N, D) Se utiliza para almacenar números fraccionales de gran tamaño. Aquí, norte Define la longitud del número entero y d Define la longitud del número después del punto decimal. Requiere 8 bytes para almacenar los datos, y se pueden agregar 53 dígitos después del punto decimal. El valor predeterminado de n es 16 y es 4.
Decimal (n, d) Se utiliza para definir un número fraccional de punto fijo que puede almacenar un número fraccional grande que el flotador y el doble. Aquí, el valor máximo del norte puede ser 65 y el valor máximo del d puede ser 30.

Tipo de datos binarios de objetos grandes (blob):

Este tipo de datos se utiliza para almacenar la cantidad variable de datos binarios. Se han descrito a continuación cuatro tipos diferentes de tipos de datos de blob.

Tipo de datos de blob Descripción
Pequeño Se puede usar para almacenar datos de un máximo de 255 bytes.
Blob (N) Se puede usar para almacenar datos de un máximo de 65,535 bytes.
Mierda Se puede usar para almacenar datos de un máximo de 16,777,215 bytes.
Piloto Se puede utilizar para almacenar datos de un máximo de 4 GB o 4,294,967,295 bytes.

Tipo de datos de fecha y hora:

Este tipo de datos se utiliza para almacenar la fecha y los valores relacionados con el tiempo. El campo de datos de fecha de fecha y hora puede almacenar la fecha, la hora, la fecha y hora, el año y los valores de la marca de tiempo. Si se proporcionan datos no válidos para el valor de campo de la fecha y la hora, el valor cero se insertará. Diferentes tipos de datos de tipos de datos de fecha y hora han descrito a continuación.

Tipo de datos de fecha y hora Descripción
FECHA Se usa para mostrar la fecha en el formato 'yyyy-mm-dd.' Puede almacenar valores de '1000-01-01' a '9999-12-31'.
TIEMPO Se usa para mostrar el tiempo en el formato 'HH-MM-SS.' Puede almacenar valores de '-838: 59: 59' a '838: 59: 59'.
FECHA Y HORA Se usa para mostrar el tiempo en el formato 'yyyy-mm-dd hh-mm-ss'. Puede almacenar valores de '1000-01-01 00:00:00' a '9999-12-31 23:59:59'.
Año [(2 | 4)] Almacena valor de 2 o 4 dígitos de año. El valor del año de 2 dígitos no es compatible con la versión 8 de MySQL.0.
Marca de tiempo (M) Se usa para mostrar el tiempo en el formato, 'aaa yyyy-mm-dd hh-mm-ss'. Puede almacenar valores de '1970-01-01 00:00:01' UTC a '2038-01-19 03:14:07' UTC.

Tipo de datos espaciales:

Este tipo de tipo de datos almacena los datos geográficos y geométricos. Se han descrito a continuación diferentes tipos de datos espaciales.

Tipo de datos espaciales Descripción
PUNTO Se utiliza para almacenar los valores de las coordenadas X e Y de un punto.
Multipunto Se utiliza para almacenar una colección de múltiples puntos.
POLÍGONO Se usa para representar la geometría multisado. Se pueden definir 0 o más límites interiores y un límite exterior por tipo de datos de polígono.
Múltiple Se utiliza para almacenar una colección de múltiples elementos de polígono.
Linestro Se usa para representar una curva de uno o más valores de puntos.
Múltiples Representa la geometría de múltiples curvas que contiene una colección de valores de Linestring.
GEOMETRÍA Se utiliza para almacenar un punto o un agregado de puntos de valores espaciales de cualquier tipo.
Geometrección Se utiliza para almacenar una colección de 0 o más valores de geometría.

Tipo de datos JSON:

El tipo de datos se utiliza para almacenar y acceder a los documentos JSON fácilmente. Este tipo de datos se utiliza para validar los datos JSON y proporcionar un espacio de almacenamiento óptimo automáticamente. Cuando se proporcionan datos no válidos para el campo JSON, producirá un error.

Requisitos previos:

Debe crear una tabla de base de datos con los datos en una base de datos MySQL para verificar los usos de los tipos de datos MySQL. Abra el terminal y conéctese con el servidor MySQL ejecutando el siguiente comando.

$ sudo mysql -u root

Ejecute el siguiente comando para crear una base de datos llamada test_db.

Crear base de datos test_db;

Ejecute el siguiente comando para seleccionar la base de datos.

Usar test_db;

Usos de los tipos de datos MySQL:

En esta parte del tutorial, múltiples ejemplos han mostrado algunos usos de los tipos de datos de MySQL para crear tablas de bases de datos.

Ejemplo-1: uso de cadena y tipo de datos numéricos

La siguiente consulta creará una tabla con cinco campos. El tipo de datos del ID del Producto el campo es int, y la clave principal se incrementará automáticamente. El tipo de datos del nombre el campo es varchar. El tipo de datos del peso el campo es pequeño. El tipo de datos del unidad el campo es enum. El tipo de datos del precio el campo es decimal. Ejecute la siguiente consulta para crear el Productos mesa.

Crear productos de mesa (
Product_id int no nulo auto_increment,
Nombre Varchar (45) No nulo,
peso pequeño no nulo,
Unit enum ('kg', 'libra', 'gram'),
precio decimal (6, 2) no nulo,
Clave primaria (product_id));

Ejecute el siguiente comando para verificar la estructura del Productos mesa.

Describir productos;

Producción:


La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejecute la siguiente consulta para leer el contenido del Productos mesa.

Insertar en 'Productos' ('Product_id', 'Nombre', 'Peso', 'Unidad', 'Precio') Valores (nulo, 'pastel', '500', 'libra', 199.99 ');

Ejecute el siguiente comando para leer el contenido del Productos mesa.

Seleccionar * de productos;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejemplo-2: Uso del tipo de datos de fecha y hora

La siguiente consulta creará una tabla con cuatro campos. El tipo de datos de ID del Producto el campo es una clave pequeña y principal. El tipo de datos del fecha de fabricación el campo es dateTime. El tipo de datos del Fecha de vencimiento el campo es dateTime. El tipo de datos del fecha de entrada el campo es la marca de tiempo. Ejecute la siguiente consulta para crear el Product_validez mesa.

Crear tabla product_validity (
Product_id Smallint (4),
fabricante_date dateTime no nulo,
expired_date dateTime no nulo,
marca de tiempo de entrada_date,
Clave primaria (product_id));

Ejecute el siguiente comando para verificar la estructura del Product_validez mesa.

Describe el producto_validez;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejecute la siguiente consulta para leer el contenido del Product_validez mesa.

Inserte en 'Product_Validity' ('Product_id', 'Manufacturing_Date', 'expired_date', 'Entry_Date') valores ('1234', '2022-01-03 17:01:35.000000 ',' 2022-01-31 22:01:35 ', current_timestamp ());

Ejecute el siguiente comando para leer el contenido del Product_validez mesa.

Seleccionar * de Product_Validity;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejemplo-3: Uso del tipo de datos espaciales

La siguiente consulta creará una tabla con tres campos. El tipo de datos de identificación el campo es pequeño. El tipo de datos del descripción el campo es texto. El tipo de datos del geo el campo es geometría. Ejecute la siguiente consulta para crear el geo_table mesa.

Crear tabla Geo_table (ID SmallInt (3), Descripción Texto, Geo Geometría);
Set @g = 'Point (10 3)';

Ejecute el siguiente comando para verificar la estructura del geo_table mesa.

Describir geo_table;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejecute la siguiente consulta para insertar un registro en el geo_table mesa.

Insertar en valores geo_tables (123, "Datos de prueba", ST_PointFromText (@G));

Ejecute la siguiente consulta para leer el contenido del geo_table mesa.

Seleccionar * de Geo_Table;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejemplo-4: uso del tipo de datos JSON

La siguiente consulta creará una tabla de datos JSON. El tipo de datos del jdata el campo es json. Ejecute la siguiente consulta para crear el jonontable mesa.

Crear tabla JSontable (JData JSON);

Ejecute el siguiente comando para verificar la estructura del jonontable mesa.

Describe jsontable;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Ejecute la siguiente consulta para insertar los datos JSON.

Insertar en valores JSontables ('"id": 1209, "Nombre": "Mir Sabbir"');

Ejecute la siguiente consulta para leer los registros del jonontable mesa.

Seleccione JData de JSontable;

Producción:

La siguiente salida aparecerá después de ejecutar el comando anterior.

Conclusión:

Los tipos de datos MySQL más utilizados se han explicado en este tutorial creando múltiples tablas para borrar el concepto de tipos de datos MySQL para los nuevos usuarios de MySQL.