Wymagania wstępne
W systemie musi być obecny następujący zestaw programów, aby zacząć używać Kaskady Usuń:
Jak działa Postgres delete Cascade
Operacja kaskady usuwa jest praktykowana usuwanie stowarzyszenia rekordów w wielu tabelach. Kaskada Delete to słowo kluczowe, które pozwala usunięcie instrukcji na wykonanie usunięcia, jeśli występują jakiekolwiek zależności. Kaskada Usuń jest osadzona jako właściwość kolumny podczas operacji wstawki. Podaliśmy próbkę słowo kluczowego Usuń Cascade, że jest używane:
Powiedzmy, użyliśmy dowód pracownika Jako klucz obcy. Podczas definiowania dowód pracownika W tabeli dziecięcej kaskada delete jest ustawiona NA jak pokazano niżej:
pracownicy referencje liczb całkowity
Identyfikator jest pobierany z tabeli pracowników, a teraz, jeśli operacja usunięcia Postgres zostanie zastosowana w tabeli nadrzędnej, powiązane dane zostaną usunięte z odpowiednich tabel dziecięcych.
Jak używać Postgres Usuń kaskadę
Ta sekcja prowadzi do zastosowania Cascade Usuń w bazie danych Postgres. Poniższe kroki utworzą tabele nadrzędne i dziecięce, a następnie zastosować na nich kaskadę Usuń. A więc zacznijmy:
Krok 1: Połącz się z bazą danych i utwórz tabele
Poniższe polecenie prowadzi nas do połączenia z nazwaną bazą danych Postgres Linuxhint.
\ c LinuxhintPo pomyślnym połączeniu bazy danych utworzyliśmy tabelę o nazwie personel a następujące wiersze kodu są wykonywane, aby utworzyć kilka kolumn w personel tabela. personel Tabela będzie działać jako tabela rodziców tutaj:
Utwórz personel tabeli (ID szeregowy klucz podstawowy, Nazwa Varchar (50), oznaczenie varchar (50));Teraz stworzyliśmy kolejną tabelę o nazwie informacje Korzystając z polecenia określonego poniżej. Wśród tabel, informacje Tabela jest określana jako dziecko, podczas gdy personel Tabela jest znana jako rodzic. Tutaj kluczowym dodatkiem byłby Usuń tryb kaskady ustawiony na ON. Kaskada Usuń jest używana w nazwie kolumny klucza obcego (Identyfikator Personelu) Ponieważ ta kolumna działa jako klucz podstawowy w tabeli nadrzędnej.
Utwórz informacje o tabeli (Info_ID Integer Not Null, Staff_id Integer References Personel (ID) na Delete Cascade, Team_Lead Varchar (50), klucz podstawowy (Info_id, Staff_Id));Krok 2: Włóż dane do tabel
Przed zagłębieniem się w proces usunięcia włóż niektóre dane do tabel. Wykonaliśmy więc następujący kod, który wprowadza dane do personel tabela.
Wstaw do personelu (id, nazwa, oznaczenie) wartości („1”, „John”, „recenzent”),Rzućmy okiem na treść tabeli personelu, używając poniższego polecenia:
Wybierz * od personelu;Teraz dodaj trochę treści do stołu dziecięcego. W naszym przypadku jest nazwana tabela dziecka informacje i wykonaliśmy następujące wiersze instrukcji Postgres, aby wstawić dane do tabeli informacji:
Wstaw do info (info_id, staff_id, team_lead) Wartości („1”, „4”, „Sam”),Po pomyślnym wstawieniu użyj instrukcji Select, aby uzyskać treść informacje tabela:
> Wybierz * z informacji;Notatka: Jeśli masz już tabele, a kaskada delete jest ustawiona na stole dla dziecka, możesz pominąć pierwsze 2 kroki.
Krok 3: Zastosuj eksploatację Kaskady Usuń
Zastosowanie operacji usuwania w polu identyfikatora tabeli personelu (klucz podstawowy) również usunie wszystkie jej instancje z informacje tabela. Poniższe polecenie pomogło nam w tym względzie:
Usuń z personelu, gdzie id = 3;Po pomyślnym wykonywaniu usunięcia zweryfikuj kaskadę Usuń lub nie. Aby to zrobić, uzyskaj treść z tabel dla rodziców i dzieci:
Po pobraniu danych z tabeli personelu obserwuje się, że wszystkie dane ID = 3 są usuwane:
> Wybierz * z personelu;Następnie musisz zastosować instrukcję Select w tabeli dziecięcej (w naszym przypadku tak jest informacje). Po zastosowaniu zauważysz, że pole związane z personel_id = 3 jest usuwany ze stołu dla dzieci.
> Wybierz * z informacji;Wniosek
Postgres obsługuje wszystkie operacje, które można przeprowadzić w celu manipulowania danymi w bazie danych. Słowo kluczowe Delete Cascade pozwala usunąć dane powiązane z dowolną inną tabelą. Zasadniczo instrukcja Usuń nie pozwoli ci na to zrobić. Ten opisowy post zapewnia działanie i wykorzystanie Postgres usunąć kaskadę. Nauczyłbyś używać operacji Usuń kaskadę w tabeli dziecięcej, a kiedy zastosujesz instrukcję Usuń w tabeli nadrzędnej, usunie on również wszystkie jej instancje z tabeli dziecięcej.