数据库设计题:选择"others"时选择多选但自由文本
Database design question: multiple choice but free text when "others" selected
我想做一个用户可以注册的网站。
比方说,当用户注册时,用户必须输入电子邮件、姓名和工作。
工作领域有4个选项,例如:学生,鞋匠,设计师,其他。
一个用户可以select多个作业,当'others'被select编辑时,用户可以在<input type="text" >
中自由输入文本
这种情况,我应该如何创建数据库?
Table job
:
id name
----------
1 student
2 shoemaker
3 designer
4 others
Table user
:
id name email
-------------------------------
1 john john@example.com
2 jane jane@example.com
Table user_job
:
id user_id job_id
-------------------
1 1 1
2 1 3
3 2 4
以上设计无法存储他人自由输入的文本信息。
什么是正确的设计?
再添加一个 table,OtherJob。
OtherJob
--------
OtherJob ID
UserID
Text
我想做一个用户可以注册的网站。
比方说,当用户注册时,用户必须输入电子邮件、姓名和工作。 工作领域有4个选项,例如:学生,鞋匠,设计师,其他。
一个用户可以select多个作业,当'others'被select编辑时,用户可以在<input type="text" >
这种情况,我应该如何创建数据库?
Table job
:
id name
----------
1 student
2 shoemaker
3 designer
4 others
Table user
:
id name email
-------------------------------
1 john john@example.com
2 jane jane@example.com
Table user_job
:
id user_id job_id
-------------------
1 1 1
2 1 3
3 2 4
以上设计无法存储他人自由输入的文本信息。 什么是正确的设计?
再添加一个 table,OtherJob。
OtherJob
--------
OtherJob ID
UserID
Text