Come usare Postgres Elimina Cascade

Come usare Postgres Elimina Cascade
La gestione del database di Postgres è come qualsiasi altro database. L'operazione CRUD ha un ruolo chiave nella gestione dei database. Il concetto chiave straniero è ampiamente praticato per collegare i dati di una tabella a un'altra tabella e costruire relazioni. L'istruzione DELETE ti impedirà di eliminare quando la chiave primaria di un record viene chiamata nell'altra tabella. Quindi, se si desidera eseguire un'operazione di eliminazione su una tabella in Postgres, si consiglia di cercare le dipendenze della tabella su altre tabelle. Per eseguire la cancellazione in tal caso, la Cascade Elimina in Postgres consente la cancellazione del record come associazioni con altre tabelle. Questo articolo spiega il funzionamento e l'utilizzo dell'operazione Cascade Elimina a Postgres.

Prerequisiti

Il seguente set di programmi deve essere presente sul sistema per iniziare a utilizzare Elimina Cascade:

  • Un database Postgres installato e funzionante correttamente:
  • Assicurati che la parola chiave Cascade Elimina sia incorporata correttamente in una tabella:

Come i postgres eliminano la cascata funziona

L'operazione Cascade Elimina viene praticata Eliminazione dell'associazione dei record in più tabelle. La Cascade elimina è una parola chiave che consente alle istruzioni di eliminazione di eseguire la cancellazione se si verificano dipendenze. La cascata di eliminazione è incorporata come proprietà della colonna durante l'operazione di insert. Abbiamo fornito un campione di eliminazione di parole chiave Cascade in quanto viene utilizzato:

Diciamo, abbiamo usato ID Dipendente Come chiave straniera. Quando si definisce il ID Dipendente Nella tabella dei bambini, la Cascade elimina è impostata su SU come mostrato di seguito:

Employee_id Integer References Employes (ID) su Elimina Cascade

L'ID viene recuperato dalla tabella dei dipendenti e ora, se l'operazione di eliminazione di Postgres viene applicata sulla tabella principale, i dati associati verranno eliminati anche dalle rispettive tabelle dei figli.

Come usare Postgres Elimina Cascade

Questa sezione ti guida ad applicare Elimina Cascade su un database Postgres. I seguenti passaggi creeranno tabelle genitore e figlio e quindi applicheranno elimina la cascata su di esse. Quindi iniziamo:

Step1: connettersi al database e creare tabelle

Il seguente comando ci porta a connetterci con il database Postgres chiamato Linuxhint.

\ c linuxhint

Una volta collegato correttamente il database, abbiamo creato una tabella denominata personale e le seguenti righe di codice vengono eseguite per creare diverse colonne in personale tavolo. IL personale La tabella fungerà da tabella genitore qui:

Crea personale della tabella (ID chiave primaria seriale, nome varchar (50), designation varchar (50));

Ora abbiamo creato un'altra tabella denominata informazioni Usando il comando indicato di seguito. Tra i tavoli, il informazioni La tabella viene definita bambino, mentre il personale La tabella è conosciuta come genitore. Qui l'aggiunta chiave sarebbe la modalità Cascade Elimina impostata su. La cascata Elimina viene utilizzata nella colonna chiave esterna denominata (Staff_id) poiché questa colonna agisce come una chiave primaria nella tabella principale.

Crea tabella info (info_id intero non null, staff_id references staff (ID) su elimina cascade, team_lead varchar (50), chiave primaria (info_id, staff_id));

Passaggio 2: inserire alcuni dati nelle tabelle

Prima di scavare nel processo di cancellazione, inserire alcuni dati nelle tabelle. Quindi, abbiamo eseguito il seguente codice che inserisce i dati nel personale tavolo.

INSERIRE IN CAMERE (ID, nome, designazione) VALORI ('1', 'John', 'Reviewer'),
('2', 'Jack', 'Istruttore'), ('3', 'Jerry', editore), ('4', 'Pock', 'Author');

Diamo un'occhiata al contenuto della tabella del personale utilizzando il comando fornito di seguito:

Seleziona * dal personale;

Ora, aggiungi alcuni contenuti alla tabella dei bambini. Nel nostro caso, la tabella dei bambini è nominata informazioni E abbiamo eseguito le seguenti righe di istruzioni Postgres per inserire i dati nella tabella delle informazioni:

Inserisci Info (info_id, staff_id, team_lead) valori ('1', '4', 'sam'),
('2', '3', 'Tim'), ('3', '1', 'Brook'), ('4', '2', 'Pane');

Dopo un inserimento riuscito, utilizzare l'istruzione Seleziona per ottenere il contenuto di informazioni tavolo:

> Seleziona * da informazioni;

Nota: Se hai già i tavoli e la cascata Elimina è impostata su un tavolo per bambini, è possibile saltare i primi 2 passaggi.

Passaggio 3: applicare Elimina il funzionamento a cascata

L'applicazione dell'operazione di eliminazione sul campo ID (chiave primaria) della tabella del personale eliminerà anche tutte le sue istanze dal informazioni tavolo. Il comando seguente ci ha aiutato a questo proposito:

Elimina dal personale dove id = 3;

Una volta che la cancellazione viene eseguita correttamente, verificare che la cascata di eliminazione viene applicata o no. Per fare ciò, ottieni il contenuto sia dalle tabelle dei genitori che di figlio:

Dopo il recupero dei dati dalla tabella del personale, si osserva che tutti i dati di ID = 3 vengono eliminati:

> Seleziona * dal personale;

Successivamente, è necessario applicare l'istruzione selezionata sulla tabella dei bambini (nel nostro caso, lo è informazioni). Una volta applicato, osserveresti che il campo associato Staff_id = 3 è eliminato dalla tabella dei bambini.

> Seleziona * da informazioni;

Conclusione

Postgres supporta tutte le operazioni che possono essere eseguite per manipolare i dati all'interno di un database. La parola chiave Cascade Elimina consente di eliminare i dati associati a qualsiasi altra tabella. Generalmente, l'istruzione DELETE non ti permetterà di farlo. Questo post descrittivo fornisce il funzionamento e l'utilizzo di Postgres Elimina Cascade Operation. Avresti imparato a utilizzare l'operazione Cascade Elimina in una tabella dei bambini e quando si applica l'istruzione DELETE sulla tabella principale, eliminerà anche tutte le sue istanze dalla tabella dei bambini.