![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 29.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
dopiero co zaczynam przygodę z sql i wymyślam sobie różne zadania do ćwiczeń i teraz tak się zastanawiam na jedną relacją. Zakładam, że z takich (przykładowych) tabel nie uda się utworzyć relacji: users(userid, login, pssword) dane_firmy(firmaid, nazwa, adres, branza, telefon, mail) Myślę, że tu by mogła być tylko relacja utworzona tak, że użytkownik jednocześnie rejestruje się i podaje dane firmy, wtedy userid=firmaid. Natomiast teraz tak sobie myślę, że trzeba byłoby utworzyć takie tabele: users(usersid, login, password) dane_firmy(firmaid, userid, nazwa, adres, branza, telefon, mail) Teraz jest sprawa nieco prostsza po wystarczy zrobić users.userid=dane_firmy.userid. Tylko pytanie jak przypisywać w tabeli dane_firmy userid? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Ja bym jeszcze zmienił nieco. Weź pod uwagę freelancerów. Jednocześnie mogą oni pracować dla wielu firm nad ich projektami. Dlatego relacja jest raczej pokroju wiele-do-wielu. Masz więc tabelę firm i użytkowników niezależnie. Do tego tabela łącząca id_usera z id_firmy, ewentualnie posiadająca stopień zależności, czyli czy user w tej firmie to pracownik, zatrudniony na umowę o dzieło lub zlecenie, kierownik działu, czy też szef lub jeszcze inne stanowisko.
W efekcie masz kilka formularzy: 1. Dodanie usera/pracownika - całkowicie niezależne. Sprawdza się czy user już aby nie istnieje. 2. Dodanie firmy - może to zrobić użytkownik posiadający konto, ponieważ nie ma firmy bez pracowników/userów. Sprawdza się czy firma już aby nie istnieje. 3. Przypisanie do firmy przez usera - user zgłasza firmie bycie jej pracownikiem. Firma może to zaakceptować lub odrzucić, zgodnie ze stanem faktycznym. 4. Przypisanie usera przez firmę - firma zgłasza usera jako pracownika. Może on to zaakceptować lub odrzucić, zgodnie ze stanem faktycznym. To tak na szybko kilka przypadków (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 00:58 |