MySQL MariaDB

Uso de restricciones únicas de MySQL

Uso de restricciones únicas de MySQL
MySQL CONSTRAINT se está descartando para describir las reglas que permiten o restringen los valores en los campos que pueden contener o limitar los datos que se pueden ingresar en las filas. El objetivo de imponer restricciones es mantener la credibilidad de una base de datos. Uno de ellos es la restricción ÚNICA.

La restricción ÚNICA garantiza que casi todos los elementos de un campo son distintos entre sí. Para un campo o grupo de campos, los límites de CLAVE ÚNICA y PRIMARIA tienen mutuamente una garantía de individualidad. Sin embargo, es posible que tengamos varias restricciones ÚNICAS en cada tabla, aunque un límite de CLAVE PRINCIPAL para cada tabla en su lugar. Vamos a aprenderlo probando algunos ejemplos.

Restricción única a través de Workbench:

En primer lugar, tenemos que aprender cómo agregar restricciones únicas a la tabla mientras usamos MySQL Workbench 8.0. Abra su MySQL Workbench 8 recién instalado.0 y conéctelo a la base de datos.

En el área de consulta, debe escribir el siguiente comando para crear una tabla 'Persona'. Esta tabla tiene 4 columnas con una clave principal. Tenemos que especificar una columna única. Como puede ver, hemos borrado la columna 'Id' como la columna 'ÚNICA':

>> CREAR TABLA Persona (ID int PRIMARY KEY NOT NULL, LastName varchar (255) NOT NULL, FirstName varchar (255), Age int, UNIQUE (ID));

Ahora se ha creado la tabla "Persona" con su columna "ID" "ÚNICA". Puede encontrar la tabla en el "Navegador" y "Esquemas" mientras se enumeran en la opción "Tablas".

Al insertar los registros, cuando toque el botón "Aplicar", se revisarán los registros insertados como se muestra a continuación. Puede ver que tenemos un registro duplicado en las líneas 3 y 4 que tienen el mismo "ID". Toca el botón "Aplicar" para aplicar los cambios.

En la imagen de abajo, está generando un error de que la columna "ID" se ha duplicado, que es el valor "13".

Después de corregir el registro, cuando aplique los cambios, funcionará correctamente.

Restricción única a través del shell de línea de comandos:

En el shell de línea de comandos de MySQL, agregaremos claves ÚNICAS a una o varias columnas. Primero abre tu línea de comandos para echar un vistazo a cada uno en los siguientes ejemplos. Escriba su contraseña para usar el shell de comandos.

Ejemplo 01: en una sola columna

Dentro de esta sintaxis, como en la especificación de columna, usamos el término ÚNICO que le gustaría aplicar la ley de unicidad. Una vez que insertamos o alteramos un valor que crea duplicados en la columna en particular, MySQL rechazará la modificación y también se dará una excepción. Habrá una restricción de columna en este límite particular. Y también podría usar eso para implementar la regla única de un campo. Aquí hay una sintaxis para una clave ÚNICA de una sola columna:

>> CREAR TABLA nombre_tabla (tipo de datos col UNIQUE, tipo de datos col);

Creemos una tabla "proveedor" en la base de datos "datos" con tres columnas en ella. La columna "ID" se define como "ÚNICA".

>> CREAR TABLA de datos.proveedor (id INT AUTO_INCREMENT NOT NULL ÚNICO, Nombre VARCHAR (50) NOT NULL, Área VARCHAR (50));

Al verificar, puede ver que la tabla aún no tiene registros.

>> SELECCIONAR * DE datos.proveedor;

Insertemos los registros en la tabla. El primer registro se insertará en la tabla sin problemas, como se muestra a continuación.

El segundo registro se insertará de nuevo sin problemas, ya que no tiene valores duplicados en la columna "ID". Por otro lado, toma el mismo valor que usa en la primera consulta en la columna "Área".

Al insertar el tercer registro, proporcionamos el valor duplicado "1" tal como lo proporcionamos en la primera declaración de inserción. Generará un error de que la columna "ID" obtiene un valor duplicado, como se muestra en la imagen a continuación.

Al verificar nuevamente, puede ver que la tabla solo tiene el registro de las dos primeras declaraciones de inserción. Si bien no hay registro de la tercera declaración de inserción.

>> SELECCIONAR * DE datos.proveedor;

Ejemplo 02: en varias columnas

Con este formato, después del término ÚNICO, aplicamos un conjunto de columnas separadas por comas entre paréntesis. MySQL utiliza la composición de los valores en los campos col1 y col2 para determinar la unicidad.

>> CREAR TABLA nombre_tabla (tipo de datos col1, tipo de datos col2, ÚNICO (col1, col2));

Hemos estado creando una tabla "ministro" en la base de datos "datos" con cinco columnas. La columna "ID" se define como "ÚNICA" y "PRINCIPAL". La palabra clave "CONSTRAINT" se utiliza para nombrar una restricción de clave única como "uc_add_sal". La palabra clave "ÚNICO" se utiliza para definir una restricción ÚNICA en las columnas especificadas entre corchetes, e.gramo., Dirección y "salario". Ahora tenemos un total de tres columnas que tienen la restricción "ÚNICA".

>> CREAR TABLA de datos.ministro (Mid INT AUTO_INCREMENT PRIMARY KEY NOT NULL UNIQUE, Name VARCHAR (50) NOT NULL, Dirección VARCHAR (50), Trabajo VARCHAR (50), Salario VARCHAR (50), CONSTRAINT uc_add_sal UNIQUE (Dirección, Salario));

Al revisar la mesa, puede ver que la mesa está vacía en este momento.

>> SELECCIONAR * DE datos.ministro;

Insertemos algunos registros en él. El primer registro se agregará correctamente a la tabla porque es la primera línea y no hay ninguna fila con la que se pueda comparar.

Ingrese otro registro único sin valores duplicados en ninguna columna, como se muestra a continuación.

No afecta cuando ingresamos los valores duplicados para las columnas que no tienen una restricción "ÚNICA". Eche un vistazo a la siguiente consulta. Tiene un valor duplicado en la columna "Nombre" y "Trabajo". Funciona correctamente porque estas dos columnas no tienen definida ninguna restricción "ÚNICA".

Por otro lado, cuando insertamos el valor duplicado, e.gramo., "13" y "Rawalpindi", generará un error, como se muestra a continuación. Esto se debe a que anteriormente se han especificado "13" y "Rawalpindi".

Al verificar, solo tenemos tres registros en la tabla, insertados por las primeras tres consultas.

>> SELECCIONAR * DE datos.ministro;

Conclusión:

Hemos hecho con gracia todos los ejemplos de definición de restricciones ÚNICAS en las columnas únicas y múltiples mientras usamos MySQL Workbench 8.0 y shell de cliente de línea de comandos de MySQL. Con suerte, no tendrá problemas al resolver problemas relacionados con claves ÚNICAS.

Trackpad en pantalla y puntero del mouse AppyMouse para tabletas Windows
Los usuarios de tabletas a menudo pierden el puntero del mouse, especialmente cuando son habituales para usar las computadoras portátiles. Los teléfon...
El botón central del mouse no funciona en Windows 10
La botón central del ratón le ayuda a desplazarse por páginas web largas y pantallas con una gran cantidad de datos. Si eso se detiene, bueno, termina...
Cómo cambiar los botones izquierdo y derecho del mouse en una PC con Windows 10
Es una norma que todos los dispositivos de mouse de computadora estén diseñados ergonómicamente para usuarios diestros. Pero hay dispositivos de mouse...