PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

PostgreSQL:KLUCZ OBCY / PRZY USUWANIU KASKADY

Klucz obcy z usuwaniem kaskadowym oznacza, że ​​jeśli rekord w tabeli nadrzędnej zostanie usunięty, to odpowiednie rekordy w tabeli podrzędnej zostaną automatycznie usunięte. Nazywa się to usuwaniem kaskadowym.

Mówisz w odwrotny sposób, to nie jest tak, że gdy usuniesz z tabeli podrzędnej, rekordy zostaną usunięte z tabeli nadrzędnej.

UPDATE 1:

PO USUNIĘCIU KASKADY Opcją jest określenie, czy chcesz usunąć wiersze z tabeli podrzędnej, gdy odpowiadające im wiersze zostaną usunięte z tabeli nadrzędnej. Jeśli nie określisz usuwania kaskadowego, domyślne zachowanie serwera bazy danych uniemożliwia usunięcie danych z tabeli, jeśli inne tabele się do niej odwołują.

Jeśli określisz tę opcję, później, gdy usuniesz wiersz w tabeli nadrzędnej, serwer bazy danych usunie również wszystkie wiersze skojarzone z tym wierszem (klucze obce) w tabeli podrzędnej. Główną zaletą funkcji usuwania kaskadowego jest to, że pozwala zmniejszyć liczbę instrukcji SQL potrzebnych do wykonania czynności usuwania.

Więc chodzi o to, co się stanie, gdy usuniesz wiersze z tabeli nadrzędnej, a nie z tabeli podrzędnej.

Tak więc w Twoim przypadku, gdy użytkownik usunie wpisy z tabeli CATs, wiersze zostaną usunięte z tabeli książek. :)

Mam nadzieję, że ci to pomoże :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Maksymalna liczba znaków w etykietach (nazwy tabel, kolumny itp.)

  2. Jak działa statement_timestamp() w PostgreSQL

  3. Wdrażanie i konserwacja PostgreSQL z Ansible

  4. Używanie wyrażenia regularnego w WHERE w Postgres

  5. Jak obliczyć sumę wielu kolumn w PostgreSQL