![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 162 Pomógł: 13 Dołączył: 16.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
projektuję system obsługi użytkowników. Każdy użytkownik ma generowany unikalny login (oraz ID, wiadomo). Dodałem możliwość usuwania użytkowników ale potrzebuję wiedzieć przy generacji loginów jakie loginy są już wykorzystane. Rozważam 2 warianty: a) dodatkowe pole w tabeli users typu boolean wskazujące czy użytkownik jest zarchiwizowany (brak możliwości logowania) czy też aktywny ![]() Potrzebne jest mi to do tego aby uzyskać informację o powiązanych z danym użytkownikiem operacjach. Proszę o Wasze porady, nie potrafię określić czy użytkowników będzie w bazie mniej niż tysiąc czy też będą ich setki tysięcy ![]() |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 98 Pomógł: 0 Dołączył: 18.03.2008 Skąd: Olsztyn Ostrzeżenie: (20%) ![]() ![]() |
Proponował bym w tabeli user pole status i wartośc 0 lub 1 jak się domyślasz to 0-zakaz dostępu 1-aktywny.
Lepiej informacje o urztkownikach mieć w jednej tabeli. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
W większości przypadków dobrze jest za wszelką cenę unikać usuwania jakichkolwiek danych z bazy. Dodaj kolumnę deleted_at/archived_at typu DATETIME, która będzie zawierać datę usunięcia/zarchiwizowania obiektu, bądź NULL w przypadku gdy istnieje.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 162 Pomógł: 13 Dołączył: 16.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ok, sposób Crozina podoba mi się (ze znacznikiem czasowym). Jeżeli potrzebował będę archiwizacji to się po prostu usunie stare rekordy które pole deleted będą miały != NULL
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 07:29 |