我需要設計一個個人博客,資料庫設計時遇到困難了。
我要實現的功能是:一般用戶只能評論部落格。管理員(就是我)可以登錄,發布博客,回覆評論。
原本設計的是表格有 User, Admin,Post, Comment。
但是User和Comment是一對多,Admin和Comment也是一對多。這樣就亂了。
所以想把User表和Admin表合併成一個表,就叫User,但是管理員是需要有密碼字段的,而普通用戶不需要,管理員只有一個,普通用戶有很多,這樣設計就浪費了一個字段。
請大家給我點建議吧,應該如何設計User和Admin表。
另外,我想學習資料庫設計。請大家推薦一下資料。因為我看到很多資料庫操作的資料,但是資料庫如何設計的呢
迷茫2017-06-28 09:25:13
用戶、角色、功能、三張表分開就好了
使用者對應角色、角色對應功能、
角色現在就是普通使用者和管理員、那查的時候根據角色關聯一下就知道需不需要判斷密碼了
不同的功能也依照角色分配、在關聯表裡面加
伊谢尔伦2017-06-28 09:25:13
只是個人部落格而已,User只需要記錄自己的登入資訊就好,一般使用者既然只能評論,那就不需要有登入的功能,一般使用者的使用者名稱或信箱就記錄在comment裡面就好啦,post跟comment是一對多的關係,就不需要涉及到跟用戶的關係啦
天蓬老师2017-06-28 09:25:13
看你的描述,你糾結的一點是數據庫裡會因為普通用戶不需要password而管理員需要password,而管理員只有你一個~~我個人想到的方式就是數據庫存儲和設計按照一樓“liujijans”的方式,不過可以在庫裡不用加上password,然後admin的這個password可以設定為動態的,例如一個你預先設定的前綴+當天日期,這樣的密碼安全度還是有的,然後也比較好記,不需要在程式碼裡刻意的設定。關於權限系統、使用者中心還有實際的業務可以分開來設計,解耦之後不但靈活,而且業務模組化比較有架構性,哈哈,裝逼範兒十足。