Utworzyłem klucz obcy (w SQL Server) przez:
alter table company add CountryID varchar(3);
alter table company add constraint Company_CountryID_FK foreign key(CountryID)
references Country;
Następnie uruchamiam to zapytanie:
alter table company drop column CountryID;
i pojawia się ten błąd:
Msg 5074, poziom 16, stan 4, wiersz 2
Obiekt „Company_CountryID_FK” jest zależny od kolumny „CountryID”.
Msg 4922, poziom 16, stan 9, wiersz 2
ZMIANA KOLUMNY KOLUMNY KRAJU Identyfikator kraju nie powiódł się, ponieważ jeden lub więcej obiektów ma dostęp do tej kolumny
Próbowałem tego, ale wydaje się, że to nie działa:
alter table company drop foreign key Company_CountryID_FK;
alter table company drop column CountryID;
Co muszę zrobić, aby upuścić CountryID
kolumnę?
Dzięki.
sql-server
tsql
mmattax
źródło
źródło
Odpowiedzi:
Próbować
źródło
To zadziała:
źródło
Myślę, że to ci pomoże ...
Spowoduje to usunięcie ograniczenia klucza obcego na podstawie określonej tabeli i kolumny.
źródło
Najpierw sprawdź istnienie ograniczenia, a następnie upuść je.
źródło
źródło
Nie znam MSSQL, ale czy nie byłoby to:
źródło
Możesz także kliknąć tabelę prawym przyciskiem myszy, wybrać modyfikację, a następnie przejść do atrybutu, kliknąć go prawym przyciskiem myszy i wybrać upuszczenie klucza podstawowego.
źródło
Czy próbujesz usunąć ograniczenie FK lub samą kolumnę?
Aby usunąć ograniczenie:
Nie będziesz mógł upuścić kolumny, dopóki nie usuniesz ograniczenia.
źródło