En los sistemas de bases de datos, una restricción de propagación "detalla lo que debería suceder con una tabla relacionada cuando actualizamos una fila o filas de una tabla de destino" (Paul Beynon-Davies, 2004, p.108). Las tablas se vinculan mediante la clave principal a las relaciones de clave externa . Es posible que los usuarios actualicen una tabla en una relación de tal manera que la relación ya no sea coherente y esto se conoce como romper la integridad referencial . Un ejemplo de cómo romper la integridad referencial: si una tabla de empleados incluye un número de departamento para 'Artículos para el hogar' que es una clave externa para una tabla de departamentos y un usuario elimina ese departamento de la tabla de departamentos, los registros de empleados de Artículos para el hogar se referirían a un no- número de departamento existente.
Las restricciones de propagación son métodos utilizados por los sistemas de administración de bases de datos relacionales (RDBMS) para resolver este problema al garantizar que las relaciones entre las tablas se conserven sin errores. En su libro de texto de base de datos, Beynon-Davies explica las tres formas en que RDBMS maneja las eliminaciones de tuplas objetivo y relacionadas :
- Eliminación restringida : el usuario no puede eliminar la fila de destino hasta que se hayan eliminado todas las filas que apuntan a ella (a través de claves externas ). Esto significa que todos los empleados de Housewares tendrían que ser eliminados, o sus departamentos cambiados, antes de quitar el departamento de la tabla departamental.
- Cascades Delete : puede eliminar la fila de destino y todas las filas que apuntan a ella (a través de claves externas) también se eliminan. El proceso es el mismo que el de una eliminación restringida, excepto que el RDBMS eliminaría automáticamente a los empleados de Houseware antes de eliminar el departamento.
- Anula Eliminar : puede eliminar la fila de destino y todas las claves externas (que apuntan a ella) se establecen en nulos . En este caso, después de eliminar el departamento de artículos para el hogar, los empleados que trabajaban en este departamento tendrían un valor NULO (desconocido) para su departamento.
Bibliografía
- Beynon-Davies, P. (2004) Tercera edición de sistemas de bases de datos , Palgrave Macmillan .