2017-07-15 59 views
-1

我想添加一個登錄/註冊選項到我的網站。什麼應該是我的數據庫設計用戶的數據。

所以,對於這一點,我想存儲:UsernamePasswordemailfirst namemiddle namelast name和電影的用戶watchlist,並且有rating

這是設計,我計劃做(不知道如果調用此爲normalization,或者是別的東西)

表:userinfo

user_id username password email    first name 

1   fsdfs  4r34fdf [email protected]   josh 
2   dfdsf  e4rewff  [email protected]   roy 

表:userwatchlist:

user_id  watchlist 
1   Logan 
1   Ironman 
1   Ironman 2 
1   Ironman 3 
2   Superman 
2   The boy 

表:user_rating

user_id  rating  movie_id 
    1   5.6    435 
    1   6.9    3423 
    1   5.8    3243 
    1   9.4    2334 
    2   7.8    6345 
    2   8.3    4343 

我將連接用user_id爲外鍵的所有表。

回答

1

不要存儲密碼。儲存它們的鹽漬嘶嘶聲。
更好的設計是

users table 
----------- 
id 
username 
pass_hash 
... 


movies table 
------------ 
id 
title 
... 


watchlist table 
--------------- 
user_id 
movie_id 

user_ratings表是好的

+0

兄弟,在監視列表,如果我把'movie_name',而不是'movie_id',它會減慢執行速度? (在獲取數據的同時)? – Toby

+0

我不是你的兄弟。除此之外,爲什麼你會在監視表中存儲冗餘數據?只存儲ID會更清潔。而如果你拼錯了電影標題呢?你將不得不在多個表格中進行糾正。 –

+0

我很抱歉。其實,先生,我有另一張桌子,其中,我用Movie_name而不是movie_id存儲結果。並完成表格。我應該改變我的表結構到你建議的嗎?或者保持它那樣?我想提高我的速度,它會影響速度嗎? – Toby

相關問題