![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 1.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Stworzyłem bazę składającą się z dwóch tabeli: mysql> select * from fv; +----+-----------+ | id | nr_dok | +----+-----------+ | 1 | fv/1/2005 | | 2 | fv/2/2005 | +----+-----------+ 2 rows in set (0.04 sec) mysql> select * from rzecz; +----+-----------+---------+ | id | nazwa | faktura | +----+-----------+---------+ | 1 | antena | 1 | | 2 | kabel | 1 | | 3 | zlaczka N | 2 | | 4 | antena | 2 | +----+-----------+---------+ 4 rows in set (0.04 sec) Istnieje relacja 1-wielu, między nr_dok, a nazwa w tabeli rzecz. Np. fv/2/2005 jest powiązana z 'zlaczka N' i 'antena' w tabeli rzecz co wskazuje '2' z kolumny 'faktura'. 'id' w obydwu tabelach są kluczami głównymi, kolumna 'faktura' kluczem obcym. Czy dobrze zaprojektowałem tą prostą bazę jeśli występuje relacja jak wyżej opisałem? Chcę skasować 'fv/2/2005' i w konsekwencji powiązane z nimi wiersze 3 i 4 z tabeli rzecz. W jaki sposób to osiągnąć nie stosując wartości klucza? Np. DELETE RFOM rzecz WHERE faktura = 2; nie chcę użyć, bo skąd będę wiedział, że to akurat numer 2, a nie inny. Staram się zrozumieć zastosowanie kluczy i relacji, ale chyba nie bardzo mi się to udaje. Stoje na początku drogi zwanej SQL. Z góry dziękuje za wszelkie wyjaśnienia. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 01:55 |