Jak usunąć tabele adres w ktorej mam kolumne id_adres (klucz główny)
DROP TABLE adres; --nie działa
wywala błąd: Could not drop object 'adres' because it is referenced by a FOREIGN KEY constraint.
Jak usunąć tabele adres w ktorej mam kolumne id_adres (klucz główny)
DROP TABLE adres; --nie działa
wywala błąd: Could not drop object 'adres' because it is referenced by a FOREIGN KEY constraint.
Nie mozesz usunać, bo inna tabela posiada referencję do tej tabeli, jest jakiś klucz obcy w innej tabeli. Musisz usunąc to powiązanie.
To nie klucz główny przeszkadza, tylko klucz obcy. Komunikat mówi to wyraźnie...
Abstrahując od sensowaności usuwania tabeli, do której są powiązane inne tabele, to aby ją usunąć musisz wcześniej usunąć wszelkie powiązania. Tu: DROP CONSTRAINT
To jak usunac te powiązanie z DROP CONSTRAINT, bo mam w tabelach 'klient' i 'pracownik' kolumne id_adres powiazane z tabela adres
alter table klient drop constraint nazwakluczaobcego
alter table pracownik drop constraint nazwakluczaobcego
teraz mozesz usunac tabele adres
i potem najlepiej usunac kolumne id_adres z obydwu tabel, bo jaki sens trzymania niepowiazanych id?