Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak ma się krotność relacji w diagramie do struktury bazy danych
Forum PHP.pl > Forum > Bazy danych > MySQL
twojastara
jakie przełożenie na strukturę bazy ma krotność relacji encji w diagramie?

Gdzie w budowie tabel mam zapisane czy relacja między encjami jest jeden-do-wielu czy jeden-do-jeden?
Pyton_000
Stricte nie masz zapisanego rodzaju relacji, dla tego jest diagram żeby wiedzieć jaka relacja jest uwzględniana.

Relacja to FK, a FK "definiują" przepływ relacji. To Ty ustalasz czy dana encja może być 1:1 czy 1:n a nawet n:1
aniolekx
sprawdzasz czy tabla ma klucz obcy i jak wygląda klucz główny, np w relacji wiele do wielu wymagana jest table pośrednia której klucz główny jest złożony z kluczy obcych (te klucze obce to klucze główne z łączonych tabel)
Pyton_000
po kluczu nie rozpoznasz czy jest to 1:1 czy 1:n, bo obie relacje w strukturze wyglądają dokładnie tak samo, różni się logika
aniolekx
Cytat(Pyton_000 @ 3.02.2015, 12:38:51 ) *
po kluczu nie rozpoznasz czy jest to 1:1 czy 1:n, bo obie relacje w strukturze wyglądają dokładnie tak samo, różni się logika


w 1:1 klucz obcy powinien być ustawiony jako unikalny
Pyton_000
A widzisz wink.gif O tym nie pomyślałem Nigdy chyba mi nie przeszło przez myśl żeby zamiast indeksu ustawić unique smile.gif
twojastara
(dzięki za odpowiedzi)

to po cholerę np w frameworku Symfony2 przy budowie modeli encji podaje się w adnotacji tabeli krotność relacji. (skoro to przydatne tylko dla diagramów)
Pyton_000
może dla tego że jak masz tabelę na MyISAM to Symfony zachowa relacje logiczną, dzięki temu zadziała Ci kaskadowe wywalanie rekordów. Nie znam Symfony ale pewnie jest jakaś filozofia dlaczego tak jest wink.gif Szukaj w dokumentacji.
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.