update una tabla poner llaves llave hacer foreign foraneas foranea fails creada constraint consola como clave child cannot agregar mysql-workbench

mysql workbench - una - Opciones de clave foránea en el banco de trabajo Mysql[Restricción, Cascada, Establecer nulo, Sin acción], ¿qué hacen?



constraint mysql (2)

La tabla que contiene la clave externa se denomina tabla de referencia o secundaria , y la tabla que contiene la clave candidata se denomina tabla de referencia o principal .

Establecer NULL : establece el valor de la columna en NULL cuando elimina la fila de la tabla principal.

CASCADE : CASCADE propagará el cambio cuando el padre cambie. Si elimina una fila, las filas de las tablas restringidas que hacen referencia a esa fila también se eliminarán , etc.

RESTRICT : RESTRICT hace que no pueda eliminar una fila principal dada si existe una fila secundaria que hace referencia al valor de esa fila principal.

NO HAY ACCIÓN : NO HAY ACCIÓN y RESTRINGIR son muy parecidos cuando se ejecuta una instrucción UPDATE o DELETE en la tabla a la que se hace referencia, el DBMS verifica al final de la ejecución de la declaración que no se viola ninguna de las relaciones referenciales . en la fila secundaria corta no hay problema si la fila principal se elimina o actualiza .

En opciones de clave externa en actualización y en eliminar. ¿Qué hace cada campo [Restringir, Cascada, Establecer nulo, Sin acción]?


Si tomas uno por uno:

Para actualizar y eliminar:

Si intenta actualizar / eliminar la fila principal:

Restringir : no se eliminará nada si hay una fila secundaria

Cascada : la fila secundaria también se eliminará / actualizará

Establecer nulo : la columna secundaria se establecerá en nulo si elimina el elemento primario

Ninguna acción : la fila secundaria no será una preocupación de la eliminación / actualización