• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dlaczego na najpierw usuwamy tabelę z kluczami obcymi?

Object Storage Arubacloud
0 głosów
141 wizyt
pytanie zadane 11 kwietnia 2020 w SQL, bazy danych przez lukasz1390 Użytkownik (500 p.)
Cześć,

Mam pytanie: Dlaczego na najpierw usuwamy tabelę z kluczami obcymi? Chodzi mi dokładniej o to, że podczas tworzenia projektu w Toad Data Modeler, w wygenerowanym skrypcie są polecenia drop table if exist... i na początku jest tabela bez kluczy obcych, a dopiero potem jest usuwana tabela z kluczami obcymi. W instrukcji do tego ćwiczenia jest napisane, że jest to błąd programu i należy to poprawić ręcznie. Niestety nie ma wyjaśnionego dlaczego najpierw ma być usunięta tabela z kluczem obcym i co to zmienia. W necie do tej pory nie znalazłem nic na ten temat.

pozdrawiam.

2 odpowiedzi

+3 głosów
odpowiedź 11 kwietnia 2020 przez Comandeer Guru (600,690 p.)
Wyobraźmy sobie, że istnieje Jan Kowalski, który jest podatnikiem, oraz urząd skarbowy, który uważnie obserwuje każdego podatnika. Jeśli nagle pana Kowalskiego przejedzie samochód i opuści ten ziemski padół, urząd będzie musiał wykonać sporo papierkowej roboty, żeby pan Kowalski figurował w odpowiedniej teczce osób, których już dłużej nie kontrolują. Niemniej jeśli bomba trafi w urząd skarbowy i przestanie on działać, to jak teraz pana Kowalskiego coś przejedzie, to nie będzie potrzeby robienia papierkowej roboty – bo nie ma jej kto robić.

Dokładnie tak samo jest w bazie danych. Tabela z kluczami obcymi to urząd skarbowy obserwujący uważnie podatników (tabele, z których pochodzą klucze obce). Jeśli taka tabela-podatnik zniknie, tabela-urząd będzie musiała wykonać odpowiednie operacje, żeby zapewnić spójność danych (albo wręcz wymusić zatrzymanie usuwania tabeli-podatnika). Jeśli jednak najpierw zniknie tabela-urząd, to resztę tabel będzie można spokojnie usunąć bez konsekwencji.
komentarz 12 kwietnia 2020 przez lukasz1390 Użytkownik (500 p.)
Dziękuję za odpowiedź :)
+1 głos
odpowiedź 11 kwietnia 2020 przez tangarr Mędrzec (154,780 p.)
Takie rzeczy najlepiej wyjaśniać na przykładzie. Mamy dwie tabele: Uczeń(numer_ucznia, imie, nazwisko, klasa) oraz Oceny (numer_ucznia (klucz obcy), ocena).
Dane do tabeli Oceny możemy wpisać tylko wtedy, gdy mamy numer_ucznia istniejący w tabeli Uczeń.
Tabela Uczeń może istnieć bez tabeli Oceny. Tabela Oceny wymaga istnienia tabeli Uczeń.

Dlatego najpierw usuwamy te tabele które nie są używane (jako referencja) przez inne tabele.
komentarz 12 kwietnia 2020 przez lukasz1390 Użytkownik (500 p.)
Dziękuję za odpowiedź :)

Podobne pytania

0 głosów
0 odpowiedzi 171 wizyt
pytanie zadane 10 kwietnia 2020 w SQL, bazy danych przez sCoreee Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 64 wizyt
pytanie zadane 27 listopada 2023 w SQL, bazy danych przez Piotrek2713 Mądrala (5,340 p.)
0 głosów
1 odpowiedź 202 wizyt
pytanie zadane 21 listopada 2019 w Python przez Dawid89 Obywatel (1,100 p.)

92,536 zapytań

141,377 odpowiedzi

319,455 komentarzy

61,922 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...