Heretyk [ Generaďż˝ ]
Klucz Obcy w Accesie
Jak ustawić klucz obcy w Accessie?
Ucieszyłbym się też, jakby ktoś wyjaśnił mi dokładnie do czego to służy.
Loczek [ El Loco Boracho ]
Hmm...
No więc tworząc relacyjną baze danych, w poszczególnych encjach będących w relacji z innymi musisz zawrzeć jakiś odnośnik do nich. Jak pewnie wiesz każda encja musi mieć swój unikalny klucz podstawowy (zazwyczaj nazywa sie id_pracownik, id_stanowisko itp.).
Załóżmy że masz 2 encje (pracownik i stanowisko) - 1 pracownik może pracować na 1 stanowisku, ale na 1 stanowisku może pracować wielu pracowników. Mamy więc relacje 1-n.
W encji pracownik musisz dodać atrybut id_stanowisko, i w ustawieniach relacji ustawić je jako klucz obcy tabeli stanowisko ;)
tyle.
Heretyk [ Generaďż˝ ]
Wchodzę w Narzędzia --> Relacje i nie widzę tam nic o kluczach obcych.
[edit] I, jeśłi można prosić, proszę o większą łopatologię w tłumaczeniu :)
Loczek [ El Loco Boracho ]
Czekaj, odpale accesa i ci powiem krok po kroku :)
Loczek [ El Loco Boracho ]
Ok więc na najprostszym przykladzie
1. Tworzysz 2 tabele: pracownicy i stanowisko
2. W tabeli stanowisko tworzysz atrybuty:
-id_stanowisko
-nazwa
-co tam jeszcze chcesz (np. pensja czy cokolwiek)
Klikasz prawym na id_stanowisko i zaznaczasz "klucz główny"
3. w tabeli pracownik tworzysz atrybuty
-id_pracownik
-imie
-nazwisko
-data zatrudnienia
-co tam jeszcze chcesz
-id_stanowisko
Klikasz prawym na id_pracownik i zaznaczasz "klucz główny"
4. Wchodzisz w relacje
5. Przenosisz obie tabele na pole gdzie ustawia sie relacje
6. Przeciągasz atrybut id_stanowisko z jednej tabeli do drugiej
id_stanowisko jest kluczem obcym w tabeli pracownicy
Loczek [ El Loco Boracho ]
A kto powiedział że się czymś różni? :)
Do utworzenia relacji potrzebujesz klucza obcego. Nie ma innej metody na tworzenie relacji :P
Heretyk [ Generaďż˝ ]
Wkleiłem w swoim poprzednim poście tak jak ja to zrobiłem. Wygląda chociaż z grubsza poprawnie?
Loczek [ El Loco Boracho ]
1. W tabeli zapisy zamiast id_zapisującego sie - musi być id_studenta
2. To samo Jeśli chodzi o numer sali i prowadzącego - nazwa musi być jednoznaczna
Poza tym, o ile masz to zrobić na informatyke, powinno być ok (jeśli byś miał przedmiot bazy danych lub jeśli masz czepialskiego nauczyciela możnaby się przyczepić o niestosowanie reguł standaryzacji nazewnictwa...)
Heretyk [ Generaďż˝ ]
Mam narzucone nazwy pól w tabelach (przez ćwiczeniowa, rzecz jasna).
Jeśli miałbym trzymać się zasad nazewnictwa albo zmienić id_zapisującego się na id_studenta to musiałbym w pewnym sensie źle wykonać zadanie.
Loczek [ El Loco Boracho ]
Ah no to może będzie dobrze. Dziwnie, w takim razie, że tak Wam kazał robić, bo to wbrew ogólnie przyjętym standardom ale cóż... :)
Heretyk [ Generaďż˝ ]
Możliwe, że prowadzący wprowadził jakieś słowne korekty do zadania.
W zasadzie wykorzystuje to, że informatyk publikuje treści zadań na platformie edukacyjnej by podczas zajęć można było ściągnąć je, wykonać i na platformę edukacyjną wysłać. Normalnie robi się to na zajęciach, ale mnie nie było i wysyłam teraz (wbrew pozorom zupełnie legalnie).
Jednak nie wiem teraz czy nie kazał czegoś zmienić, ale nie mam jak sprawdzić.
Loczek [ El Loco Boracho ]
Hmm no może aż tak się nie zagłębiał w standaryzacje... :P
Ja teraz musze robić projekt BD hotelu na uczelnie :)
Swoją drogą nazewnictwo atrybutów też nie zestandaryzowane, ale nie jest to wymagane w tym projekcie :)