Эта тема очень широкая.Что касается масштабируемости, то Wufoo (и другие сайты для создания форм) в настоящее время работают.Итак, краткий ответ: это уже делается, поэтому масштабируемость не должна быть проблемой.Однако случайная генерация нескольких таблиц очень быстро выйдет из-под контроля.
Если вы не находитесь в точке, где у вас возникла эта проблема, я сначала собрал бы систему с одиночными таблицами и UUID для первичных ключей.,Это делает их подвижными позже.Затем, если размеры таблиц становятся проблемой, вы можете разделить таблицы так, как считаете нужным.Например, у вас могут быть все обычные, фамилия которых начинается с A в таблице a_forms
.
Что касается структуры таблиц, вы должны построить их как ONE-TO-MANY.Одна форма может иметь много элементов.Все элементы могут быть предварительно определены (т. Е. Текст, текстовая область, переключатель, флажок, кнопка отправки и т. Д.). Когда кто-либо создает форму, вы можете serialize()
элементы формы и сохранить их в таблице.Когда необходимо отобразить форму, вы unserialize()
анализируете элементы и создаете форму.