Czy klucz obcy może mieć wartość NULL w Postgresie?
Czy klucz obcy może mieć wartość NULL w Postgresie?

Wideo: Czy klucz obcy może mieć wartość NULL w Postgresie?

Wideo: Czy klucz obcy może mieć wartość NULL w Postgresie?
Wideo: How To Add FOREIGN KEY in Postgresql 2024, Listopad
Anonim

WSTAWIĆ W WARTOŚCI produktu (11, „dla Joe”, 1); WSTAWIĆ WARTOŚCI produktu (22, „dla wszystkich”, ZERO ); Posiadanie wartości nullable jest całkowicie legalne klucz obcy kolumna.

Pojawia się również pytanie, czy klucz obcy może mieć wartość NULL?

A klucz obcy uzależnia swoją tabelę od innej tabeli zwanej tabelą nadrzędną. A klucz obcy zawierający zero wartości nie mogą pasować do wartości rodzica klucz , ponieważ rodzic klucz zgodnie z definicją Móc nie posiadać zero wartości. Jednak pusty klucz obcy wartość jest zawsze ważna, niezależnie od wartości którejkolwiek z jej nie- zero Części.

Dodatkowo, jak dodać klucz obcy w PostgreSQL? DODAJ OGRANICZENIE nazwa_ograniczenia KLUCZ OBCY (c1) REFERENCJE tabela_rodzica (p1); Ostatnia uwaga, kiedy chcesz dodaj klucz obcy ograniczenie z ON DELETE CASCADE do istniejącej tabeli, musisz wykonać następujące kroki: Usuń istniejącą klucz obcy ograniczenie. Dodać nowy klucz obcy ograniczenie z akcją ON DELETE CASCADE.

Czy klucz obcy może mieć wartość null mysql?

5 odpowiedzi. NULL w klucz obcy są całkowicie akceptowalne. Radzenie sobie z wartościami NULL w klucz obcy jest trudne, ale to nie znaczy, że zmieniasz takie kolumny na NIE ZERO i wstawiaj fałszywe ("N/A", "Nieznane", "Brak wartości" itp.) rekordy w swoich tabelach referencyjnych.

Czy wymagane są klucze obce?

Ponieważ celem zagraniczny kluczem jest identyfikacja konkretnego wiersza tabeli, do której się odwołuje, zazwyczaj wymagany że zagraniczny klucz jest równy kandydatowi kluczem jakiś wiersz tabeli podstawowej lub nie mają żadnej wartości (wartość NULL). Ta reguła jest nazywana ograniczeniem integralności referencyjnej między dwiema tabelami.

Zalecana: