Правильный способ хранения пользовательских данных в SQL
Я хочу создать онлайн-конструктор форм, похожий на wufoo, который позволяет пользователям создавать и публиковать свои собственные веб-формы. Каждое представление должно быть сохранено в базе данных, где пользователь может впоследствии получить представление.
Как эти формы будут динамичными, т.е. пользователь имеет полный контроль над количеством и типом полей формы. Я пытаюсь придумать надежный дизайн базы данных для хранения этой информации.
Я хотел бы иметь один тип поля таблицы, который содержит каждый тип поля, доступного для пользователей, т.е. textfield, emailfield и т. д.
Одна таблица базовой формы, которая будет содержать каждый идентификатор формы, URL и т. Д.
После этого у меня будет таблица полей формы, которая будет содержать ссылку на базовую форму и тип поля, эта таблица также может включать настраиваемую проверку, которая должна выполняться для каждого поля.
Этот дизайн хорош в качестве базовой структуры? Я думаю, что будет легко добавлять новые типы полей в приложение, однако я неЯ не знаю, каковы потенциальные недостатки, поскольку я далек от эксперта по SQL.