sql >> Base de Datos >  >> RDS >> PostgreSQL

PostgreSQL:CLAVE EXTRANJERA/EN ELIMINAR CASCADA

Una clave externa con una eliminación en cascada significa que si se elimina un registro en la tabla principal, los registros correspondientes en la tabla secundaria se eliminarán automáticamente. Esto se denomina eliminación en cascada.

Está diciendo de manera opuesta, esto no es que cuando elimine de la tabla secundaria, los registros se eliminarán de la tabla principal.

UPDATE 1:

EN ELIMINAR CASCADA La opción es especificar si desea que se eliminen las filas en una tabla secundaria cuando se eliminan las filas correspondientes en la tabla principal. Si no especifica eliminaciones en cascada, el comportamiento predeterminado del servidor de la base de datos le impide eliminar datos en una tabla si otras tablas hacen referencia a ella.

Si especifica esta opción, más adelante, cuando elimine una fila en la tabla principal, el servidor de la base de datos también eliminará las filas asociadas con esa fila (claves externas) en una tabla secundaria. La principal ventaja de la función de eliminación en cascada es que le permite reducir la cantidad de sentencias SQL que necesita para realizar acciones de eliminación.

Así que se trata de lo que sucederá cuando elimine filas de la tabla principal y no de la tabla secundaria.

Entonces, en su caso, cuando el usuario elimine entradas de la tabla CAT, las filas se eliminarán de la tabla de libros. :)

Espero que esto te ayude :)