![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 152 Pomógł: 4 Dołączył: 4.10.2012 Ostrzeżenie: (10%) ![]() ![]() |
Witam
Ogólnie w bazie danych mam dwie tabele ( więcej, ale chcę nakreślić dane ). Mam tabele Magazyny ( która zawiera wszystkie dane identyfikujące ten magazyn ) Mam także Tabele Faktury ( na której widnieją niektóre dane z tabeli Magazyny <- dane te przekopiowywane są z tabeli Magazyny ), czy jest tutaj redundancja? Jest to dopuszczalne? Moim zdaniem redundancja jest, ale za cholerę nie da się tego inaczej zrealizować... -------------------- C/C++/C#/JAVA/SQL ( funkcje, procedury, pakiety ).
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
1. Jest to redundancja (jeśli zostały przekopiowane z innej tabeli)
2. Jeśli to nie jest projekt akademicki, to jest to dopuszczalne - często wręcz ułatwia życie. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 152 Pomógł: 4 Dołączył: 4.10.2012 Ostrzeżenie: (10%) ![]() ![]() |
Jeszcze pytanie odnośnie takich zamkniętych połączeń, czy jest to poprawne?
http://www.tinypic.pl/2adclsit57rr Jeden magazyn może mieć wiele produktów, Magazyn zatrudnia wiele pracowników Jeden pracownik może wystawić wiele faktur itd itd To jest tylko przykład, chodzi mi tylko czy należy unikać tak zamkniętych kół. -------------------- C/C++/C#/JAVA/SQL ( funkcje, procedury, pakiety ).
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 340 Pomógł: 49 Dołączył: 3.07.2009 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
Nie ma powodu aby unikać takich połączeń.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 152 Pomógł: 4 Dołączył: 4.10.2012 Ostrzeżenie: (10%) ![]() ![]() |
A czy można dawać klucze obce do złożonego klucza podstawowego?
-------------------- C/C++/C#/JAVA/SQL ( funkcje, procedury, pakiety ).
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 152 Pomógł: 4 Dołączył: 4.10.2012 Ostrzeżenie: (10%) ![]() ![]() |
Ja wiem, że można
![]() Chodzi mi o to jak to wygląda ze strony poprawności. Np. Moją tabelą najważniejszą w bazie danych to MAGAZYNY ( tylko do odczytu )I np. Jeden magazyn może obsłużyć wiele klientów ( klienci mają FK z magazynu i te FK + ID_K to primary key ). Troche to licho wygląda dalej bowiem: np Klienci mogą złożyć wiele zamówień , tutaj automatycznie tabela Zamówienia ma już FK1, FK2 z tabeli klienci ( bo klienci mają złożony klucz główny ) i znowusz biore jeden FK do złożenia z ID_ZAMOWIENIA. Skoro jest mi to potrzebne to stosować to i tyle?? Bo cały czas mam na uwadzę spójność bazy. -------------------- C/C++/C#/JAVA/SQL ( funkcje, procedury, pakiety ).
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 17:59 |