Pole kolor w tabeli samochody może mieć wartości tylko ze słownika lakier. Która kwerenda ustanowi tę relację?
A.
ALTER TABLE samochody ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId);
Dobrze. Poprawna składnia: kolumna w nawiasie + tabela(kolumna).
B.
ALTER TABLE samochody ADD FOREIGN KEY kolor REFERENCES lakier;
Źle. Brak nawiasów wokół kolumny i wskazania kolumny docelowej.
C.
ALTER TABLE samochody ADD FOREIGN KEY (barwa) REFERENCES samochody(kolor);
Źle. Odwołuje się do złej tabeli/kolumny.
D.
ALTER TABLE samochody ADD FOREIGN KEY barwa REFERENCES samochody.lakier;
Źle. Kolumna
barwa nie istnieje, składnia błędna.Aby związać pole
kolor ze słownikiem lakier, klucz obcy musi mieć kolumnę w nawiasie i wskazywać konkretny klucz tabeli słownikowej: ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId). Dlatego poprawna jest ta kwerenda.Pozostałe zapisy są błędne. Brak nawiasu wokół kolumny (
FOREIGN KEY kolor) jest niepoprawny składniowo. Warianty z barwa wskazują nieistniejącą kolumnę, a odwołania samochody.lakier czy samochody(kolor) kierują do złej tabeli. Poprawne jest ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId).