我正在嘗試創建用戶註冊系統。在註冊過程中,用戶可以選擇不同的愛好。因此,我必須管理多重屬性'愛好'。 users表的字段'username'(varchar)作爲主鍵。我正在考慮創建另一個名爲「興趣愛好」的表,我如何將每個用戶連接到它的歡呼聲?有什麼建議麼?管理多值屬性SQL
謝謝
我正在嘗試創建用戶註冊系統。在註冊過程中,用戶可以選擇不同的愛好。因此,我必須管理多重屬性'愛好'。 users表的字段'username'(varchar)作爲主鍵。我正在考慮創建另一個名爲「興趣愛好」的表,我如何將每個用戶連接到它的歡呼聲?有什麼建議麼?管理多值屬性SQL
謝謝
你需要3張桌子。第一個建議是將您的主鍵更改爲用戶ID(建議使用整數,自動增量)而不是用戶名。名稱的功能不如鍵。
第二個表是你的userhobby表,它將用戶ID鏈接到一個愛好。我推薦hobby_id和user_id作爲你的兩個字段...這是一個映射表,如果你想讓一個用戶能夠刪除一個愛好,但你不想要的話,它真的只需要包含ID和可能的日期字段/有效字段刪除實際的數據。使用2個字段作爲主鍵user_id + hobby_id。
第三張決賽桌是Hobby,它將hobby_id映射到實際的愛好。 Hobby_id(主鍵,int和自動增量首選),然後是興趣名稱以及任何你想爲該興趣指定的信息。
有意義嗎?該設置將允許用戶具有多種興趣愛好並保留冗餘數據
關聯表或[Junction Tables](http://stackoverflow.com/a/32620163)。所以一對多或多對多。 – Drew