ввести неизвестное количество полей в MySQL - лучшая структура для этого?

Мне нужно хранить данные, которые были отправлены из нескольких форм - самое интересное, поскольку эти формы будут создаваться конструктором форм, к которому я планирую предоставить пользователям доступ, я понятия не имею, сколько полей будет в форме, или сколько полей будет отправлять пользователь. Я думал о структуре таблицы, похожей на следующую (сама форма сохраняется как php для include):

| FormId | FormType | InputID | InputType | LongText | Text | Date |

FormId относится к другой таблице хранения местоположения файла формы и т. Д. Для включения (например, ниже), Input ID относится к вводу на странице.

| FormId | FormType | PathToForm | DateCompleted |...etc

вход «а» из formId 1 может выглядеть так:

<input id="a" name="a" type="text" value="example"/>

тогда как вход «a» из formId 2 может выглядеть так:

<textarea name="a" id="a"></textarea>

Который я могу записать в таблицу следующим образом:

| FormId | FormType | InputID | InputType | LongText |   Text  | Date |
--------------------------------------------------------------------------
|   1    |     1    |    a    |    text   |   NULL   | example | NULL |
|   2    |     2    |    a    |  textarea |  example |   NULL  | NULL |

Количество «входных данных» в каждой форме потенциально неограничено - входные данные в разных шаблонах форм могут быть разного «типа» каждый раз.

Мой вопрос (наконец-то!) - это лучший способ сделать это? Я знаю, что хранить выходные данные формы для каждой строки не совсем идеально - однако без сотен таблиц и без потери возможности извлечения полезных данных, если они мне понадобятся в будущем (через «FormType»), я ' Я не уверен в любом другом способе структурирования. Ничего подобного раньше не встречал, извините, если это звучит глупо!

Ответы на вопрос(1)

Ваш ответ на вопрос