我正在尝试为多个类别设计数据库 以下是表格
用户
id | first_name | last_name | password | profile_image
类别
id | category_name
1 | Author
2| Politician
3 | Developer
users_category
id | user_id | category_id
作者
id | user_id | author_detail | author_started_book |
authors_books
id | author_id | book_name |
显影剂
id | user_id | developer_programing_skill
developer_websites
id | developer_id | website_name |website_link
就像表格将为其他类别
创建一样我也听说过EAV模型,但我不擅长数据库设计,我试图理解它,但对我来说非常复杂。 但是这个数据库设计看起来并不好。所以我想从堆栈溢出的人那里寻求一些帮助。
答案 0 :(得分:2)
你的模型足够好,但我想提供一些改进:
最好有一个Users
和Peoples
表,并使用User_ID
作为F.K进入People
表。此策略有助于在项目中实现模块化身份验证。
您无法在一个表格中收集所有类别表格(作者,开发人员,会计师,商人等)。它们具有不同的属性。 但,他们可能有共同属性。因此,您可以使用People_Categories
表来添加所有类别的人员。然后,您可以在所有类别表(作者,开发人员,会计师,商人等)中使用People_Categories
的{{1}}作为F.K。
另一方面,ID
表类似于没用。要以有用的方式保存数据,users_category
表的Category
可以在ID
中用作F.K。
最后看到我描述的ER: