Этот вопрос много о том, как это сделать, идея и т. Д.
У меня есть ситуация, когда пользователь может создать столько пользовательских полей, сколько он может, типа Number, Text или Date, и использовать это для создания формы. Мне нужно сделать / спроектировать некоторую табличную модель, которая может обрабатывать и хранить значение, чтобы можно было выполнить запрос по этим значениям после сохранения.
Ранее я жестко закодировал формат для 25 пользовательских полей (UDF). Я создаю таблицу с 25 столбцами с типами 10 Number, 10 Text и 5 Date и сохраняю в ней метку, если пользователь использует какое-либо поле. Затем сопоставьте его с другой таблицей, имеющей тот же формат, и сохраните значение. Сопоставление выполняется для того, чтобы узнать, какое поле имеет какую метку, но я надеюсь, что это неэффективный способ.
Любое предложение будет оценено.
Пользователи имеют разрешения на создание любого количества UDF указанных выше типов. затем его можно использовать для повторного создания форм, это также N чисел и необходимо сохранять данные для каждого типа форм.
например. скажем, пользователь создал 10 числовых полей даты 10 и 10 текстовых полей, используя первые 5 в каждом для создания form1, и все 10 для создания form2 теперь сохранили данные.
Мои мысли об этом:
Создайте таблицу1 с [id, name (как UDF_xxx, где xxx - тип данных), UserLabel]
table2 для отображения формы и table1 [id (f_key table1_id), F_id (id формы)]
и создайте 1 таблицу для каждого типа данных как [id (f_key of table1), F_id (номер формы), R_id (идентификатор строки для данных, будет одинаковым для всех типов данных), значение]
Благодаря всему, что я собираюсь реализовать, и вход в DataSet, и подход json выглядят хорошо, поскольку дают более широкие возможности расширения. Тем не менее, я должен выяснить, что лучше всего подходит к существующему формату.