Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Organizacja bazy danych
Forum PHP.pl > Forum > Bazy danych
ShaggyAG
Witam,

Szybkie pytanie...
Czy konta użytkowników (id, login, hasło, email) lepiej trzymać osobno czy mogę do tej tabeli dołożyć profile (avatar, daty urodzenia, zamieszkanie itp?)
Jakie rozwiązanie jest lepsze i bezpieczniejsze?

Z góry dziękuje za odpowiedzi.
Pozdrawiam
Crozin
Masz jakieś przekonanie/przeświadczenie dlaczego by tego nie łączyć? Nie ma ku temu jakiś specjalnych przeciwwskazań.
ShaggyAG
Wsumie to nie. Nie wiem dlaczego tak zrobiłem na początku. Teraz w miarę postępów w pracy na stronie staje się to dość uciążliwe, więc zacząłem się zastanawiać.

Jeszcze jedno malutkie pytanie...
Czy jak daję użytkownikowi możliwość usuwania np. właśnie konta na stronie lub całego wiersza z jakiejś tabeli to lepiej używać DELETE czy może dodać sobie kolumnę w tabeli np. remove i updatować ją na true?
Trochę mnie przeraża:

Cytat
Notice the WHERE clause in the SQL DELETE statement!
The WHERE clause specifies which record or records that should be deleted. If you omit the WHERE clause, all records will be deleted!


No i niszczy to kolejność id z AUTO_INCREMENT.
Crozin
1. Jeżeli podasz SQL-ke "usuń z tabeli" to oczywistym jest, że usunie wszystko.
2. Faktycznie coś takiego jak "soft delete", tj. dodatkowa kolumna z informacją o tym, że coś zostało usunięte jest raczej dobrą praktyką. Wymaga ona nieco więcej pracy (trzeba niemal wszędzie uwzględniać tę kolumnę) ale przynajmniej niczego fizycznie nie usuwasz z dysku.
3. Kolejność ID z AUTO_INCREMENT jest kompletnie bez znaczenia - nigdy nie powinieneś się nią przejmować.
ShaggyAG
Dziękuje.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.