Unikalne wartości w dwóch tabelach

0

Witam serdecznie,

Muszę poprawić swoją strukturę bazy danych.
Mam przewidziane 2 typy użytkowników: pracodawca i pracownik. Użytkownicy sami rejestrują swoje konta (login, hasło, email itd.)

Czy da się zaprojektować bazę tak, aby w 2 tabelach(pracodawca i pracownik) były unikalne dane?
Przykład: Pracownik rejestruje się emailem [email protected] i zablokować mu możliwość rejestracji jako pracodawca tym emailem. (przy logowaniu będzie problem o który rekord chodzi).
Logowanie chcę zrobić z 1 formularza (login lub email i hasło) dla pracodawców i pracowników i po zalogowaniu zmieniać zawartość na odpowiednią.
W jednej tabeli to wiadomo dam UNIQUE i nie może być takich samych emaili w jednej tabeli ale w dwóch?

0

Jaka baza?

0

@Marcin.Miga: mysql

1

A poco chcesz to dzielić na dwie tabele? Dane do logowania powinny być trzymane w jednej tabeli. Reszte atrybutów mozesz podzielić na pracownikow i pracodawców w.odzielnych tabelach. Jak koniecznie chcesz to podzielić na dwie tabele to mozesz zrobic brzydkie rozwiązanie na trigerach.

0

@UglyMan: Testuję właśnie rozwiązanie na podzielenie na 3 tabele: logowanie, pracodawcy i pracownicy. Chyba będzie to słabo wyglądać bo mam jeszcze szereg pól do uzupełnienia i powstają "luki"
screenshot-20210107202956.png

Przykładowo wpisałem takie dane, później jeżeli trzeba dopisywałbym co trzeba jednak uważam to za mało profesionalnie.

0
in.in2 napisał(a):

@UglyMan: Testuję właśnie rozwiązanie na podzielenie na 3 tabele: logowanie, pracodawcy i pracownicy. Chyba będzie to słabo wyglądać bo mam jeszcze szereg pól do uzupełnienia i powstają "luki"

screenshot-20210107202956.png

Przykładowo wpisałem takie dane, później jeżeli trzeba dopisywałbym co trzeba jednak uważam to za mało profesionalnie.

Nie wiem, w czym masz problem i nie rozumiem twojego problemu, ale mam wrażenie, że porabujesz rozwiązać nieistniejący problem. Może opisz szerzej co uważasz za "nie profesjonalne" i będzie łatwiej coś poradzić.

1 użytkowników online, w tym zalogowanych: 0, gości: 1