Sql enum

Sql enum

Mysql admite el tipo enum. Un enum es un objeto de cadena único en el que el valor se selecciona de una lista de valores predefinidos.

Si alguna vez ha usado HTML, piense en ellos como botones de radio con un conjunto de valores, y solo puede seleccionar un valor.

Sintaxis

MySQL nos permite crear una columna Enum utilizando la sintaxis que se muestra a continuación:

Crear tabla table_name (
col enum ('value_1', 'value_2', 'value_3', ...),
);

El tipo de enumación toma tres atributos:

  1. POR DEFECTO - Establece el valor predeterminado si el usuario no selecciona ningún valor de una lista de opciones proporcionadas.
  2. NULO - Establece el valor predeterminado en NULL.
  3. No nulo - Evita que la columna contenga valores no nulos al obligar al usuario a seleccionar un valor o usar cualquier valor predeterminado.

Ejemplo

Un ejemplo clásico del tipo enum es almacenar el tamaño de la ropa. Mostremos cómo usar el tipo de enum creando una mesa que almacene la información de la ropa.

Un ejemplo es como se muestra:

Crea camisas de mesa (
texto de nombre,
Tamaño enum ('X-Small', 'pequeño', 'medio', 'grande', 'X-Large')
);

La consulta anterior crea una mesa llamada camisas que almacenan el nombre de la camisa y el tamaño del tipo enum. Además, el enum contiene posibles tamaños de camisa.

NOTA: Aunque PostgreSQL admite el tipo de enum, requiere que defina sus valores de enum como un tipo específico.

Un ejemplo es como se muestra:

Cree el tamaño de tipo como enum ('X-Small', 'pequeño', 'medio', 'grande', 'x-larga');

Una vez que tenga la tabla declarada con el tipo enum, puede insertar registros como se muestra:

Inserte en camisas (nombre, tamaño) valores ('polo camisa', 'mediana'), ('camiseta', 'x-small');

Una vez insertado, puede seleccionar filas específicas utilizando la cláusula Where como se muestra:

Seleccione el nombre, tamaño de las camisas donde size = 'X-Small';

Índice de enum

A cada valor en una columna enum se le asigna un índice a partir del índice 1. Puede usar este índice para seleccionar, eliminar o actualizar un registro específico.

Por ejemplo, para seleccionar el registro donde el valor enum es X-Small usando su índice, podemos hacer:

Seleccione * de camisas donde talla = 1;

NOTA: También puede usar un tipo de enum para ordenar las filas.

Final

Este artículo le brinda un uso práctico del tipo enum en SQL. Consulte la documentación para explorar más.

https: // dev.mysql.com/doc/refman/8.0/en/enum.html

https: // www.postgresql.org/docs/current/datatype-enum.html