Вопрос проектирования базы данных: множественный выбор, но свободный текст при выборе «другие»

#database-design

#database-design

Вопрос:

Я хочу создать веб-сайт, на котором пользователи могут зарегистрироваться.

Допустим, когда пользователь регистрируется, пользователь должен ввести адрес электронной почты, имя и задание. В поле вакансии есть 4 варианта, например: студент, сапожник, дизайнер, другие.

Пользователь может выбрать несколько заданий, а когда выбрано «другие», пользователь может свободно вводить текст в <input type="text" >

В этой ситуации, как я должен создать базу данных?

Таблица job :

 id   name
----------
1    student
2    shoemaker
3    designer
4    others
  

Таблица user :

 id   name   email
-------------------------------
 1   john   john@example.com
 2   jane   jane@example.com
  

Таблица user_job :

 id  user_id  job_id
-------------------
 1      1       1
 2      1       3
 3      2       4
  

Приведенный выше дизайн не может хранить информацию о текстовом тексте других пользователей.
Каков правильный дизайн?

Ответ №1:

Добавьте дополнительную таблицу, OtherJob.

 OtherJob
--------
OtherJob ID
UserID
Text