Cómo usar Postgres Eliminar Cascade

Cómo usar Postgres Eliminar Cascade
La gestión de la base de datos de Postgres es como cualquier otra base de datos. La operación CRUD tiene un papel clave en la gestión de las bases de datos. El concepto de clave extranjera se practica ampliamente para vincular los datos de una tabla a otra tabla y construir relaciones. La instrucción Eliminar le restringirá la eliminación cuando se llama a la clave principal de un registro en la otra tabla. Entonces, si desea realizar una operación de eliminación en una tabla en Postgres, se recomienda buscar las dependencias de la tabla en otras tablas. Para realizar la eliminación en tal caso, la Cascada de eliminación en Postgres permite la eliminación del registro como sus asociaciones con otras tablas. Este artículo explica el trabajo y el uso de la operación de Delete Cascade en Postgres.

Requisitos previos

El siguiente conjunto de programas debe estar presente en su sistema para comenzar a usar Delete Cascade:

  • Una base de datos de Postgres instalada y funcionando correctamente:
  • Asegúrese de que la palabra clave Delete Cascade esté incrustada correctamente en una tabla:

Cómo funciona Postgres Eliminar Cascade

Se practica la operación Delete Cascade eliminando la asociación de registros en múltiples tablas. El Delete Cascade es una palabra clave que permite que las declaraciones de eliminación realicen la eliminación si se producen dependencias presentes. La cascada de eliminación está integrada como una propiedad de la columna durante la operación de inserción. Hemos proporcionado una muestra de la palabra clave de Delete Cascade que se usa:

Digamos que hemos usado ID de empleado Como clave extranjera. Al definir el ID de empleado En la mesa infantil, la cascada de eliminación se establece en EN Como se muestra abajo:

Employee_ID Integer References Empleados (ID) en Delete Cascade

La identificación se está obteniendo de la tabla de empleados y ahora, si la operación de eliminación de Postgres se aplica en la tabla principal, los datos asociados también se eliminarán de las tablas infantiles respectivas.

Cómo usar Postgres Eliminar Cascade

Esta sección lo guía para aplicar Delete Cascade en una base de datos de Postgres. Los siguientes pasos crearán tablas de padres e hijos y luego aplicarán la Cascada de eliminación. Entonces, comencemos:

Paso 1: conectarse a la base de datos y crear tablas

El siguiente comando nos lleva a conectarnos con la base de datos de Postgres con nombre Linuxhint.

\ C Linuxhint

Una vez que la base de datos está conectada con éxito, hemos creado una tabla llamada personal y las siguientes líneas de código se ejecutan para crear varias columnas en el personal mesa. El personal La tabla actuará como una tabla de padres aquí:

Crear personal de tabla (ID Serial Key, nombre Varchar (50), designación Varchar (50));

Ahora, hemos creado otra tabla llamada información mediante el uso del comando indicado a continuación. Entre las mesas, la información la tabla se conoce como el niño, mientras que el personal La tabla se conoce como padre. Aquí la adición de la tecla sería el modo Delete Cascade establecido en ON. La cascada de eliminación se usa en la columna de clave extranjera llamada (Identificación del personal) Como esta columna actúa como una clave principal en la tabla principal.

Crear información de la tabla (Info_id Integer no NULL, Staft_ID Integer References Staff (ID) en Delete Cascade, Team_lead Varchar (50), Key primario (info_id, staff_id));

Paso 2: inserte algunos datos en tablas

Antes de profundizar en el proceso de eliminación, inserte algunos datos en las tablas. Entonces, hemos ejecutado el siguiente código que inserta datos en el personal mesa.

Insertar en los valores del personal (ID, nombre, designación) ('1', 'John', 'Revisor'),
('2', 'Jack', 'Instructor'), ('3', 'Jerry', Editor), ('4', 'Pock', 'Autor');

Echemos un vistazo al contenido de la tabla de personal utilizando el comando proporcionado a continuación:

Seleccionar * del personal;

Ahora, agregue algo de contenido a la mesa infantil. En nuestro caso, se nombra la mesa de los niños información y hemos ejecutado las siguientes líneas de declaraciones de Postgres para insertar datos en la tabla de información:

Insertar en Info (info_id, staff_id, team_lead) valores ('1', '4', 'sam'),
('2', '3', 'Tim'), ('3', '1', 'Brook'), ('4', '2', 'Panel');

Después de la inserción exitosa, use la instrucción SELECT para obtener el contenido de información mesa:

> Seleccionar * de la información;

Nota: Si ya tiene las tablas y la cascada de eliminación se establece en dentro de una mesa infantil, entonces puede omitir los primeros 2 pasos.

Paso 3: Aplicar la operación de eliminación de la cascada

Aplicar la operación de eliminación en el campo de identificación de la tabla de personal (clave principal) también eliminará todas sus instancias del información mesa. El siguiente comando nos ayudó a este respecto:

Eliminar del personal donde ID = 3;

Una vez que la eliminación se realiza con éxito, verifique que la cascada de eliminación se aplique o no. Para hacerlo, obtenga el contenido de las tablas de los padres e hijos:

Al recuperar los datos de la tabla del personal, se observa que todos los datos de ID = 3 se eliminan:

> Seleccionar * del personal;

Después de eso, debe aplicar la instrucción SELECT en la tabla del niño (en nuestro caso, es información). Una vez aplicado, observaría que el campo asociado con staff_id = 3 se elimina de la mesa infantil.

> Seleccionar * de la información;

Conclusión

Postgres admite todas las operaciones que se pueden llevar a cabo para manipular los datos dentro de una base de datos. La palabra clave Delete Cascade le permite eliminar los datos asociados con cualquier otra tabla. En general, la declaración Eliminar no le permitirá hacerlo. Esta publicación descriptiva proporciona el trabajo y el uso de la operación Cascade de Postgres Eliminar. Habría aprendido a usar la operación de eliminación en cascada en una mesa infantil, y cuando aplique la instrucción Eliminar en la tabla principal, también eliminará todas sus instancias de la mesa infantil.