Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Relacje na tabelach
Forum PHP.pl > Forum > Bazy danych
kosmos
Witam,

załóżmy że mam tabelę NOTATKA. Notatkę może dodać użytkownik systemu do takich obiektów jak MEDIA i KLIENT. Wygląda to mniej więcej tak:


NOTATKA
id_notatka
id_media
id_klient
nazwa
...


MEDIA
id_media
nazwa
...

KLIENT
id_klient
imie
nazwisko
...

Teraz załóżmy, że chcę dodać notatkę dla klienta (rekordu w tabeli KLIENT). Wówczas id_media w tabeli NOTATKA nie będzie miało powiązania z tabelą MEDIA.
Kiedy chcę wstawić taką notatkę do bazy, mam komunikat:

#1452 - Cannot add or update a child row: a foreign key constraint fails ...

Jak można to obejść? w takich sytuacjach w klucze zewnętrzne tabel z którymi nie chcę mieć powiązania mam wstawiaćnp 0?

Dziękuję za odpowiedzi.
irmidjusz
kolumny będące kluczami obcymi muszą mieć możliwość przechowywać typ NULL
kosmos
Czyli "ustawienia domyślne" dla kluczy obcych ustawić na NULL ?

Poszło dzięki za potwierdzenie przypuszczeń wink.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.