Я пишу приложение .net, которое принимает информацию о форме, чтобы сделать некоторые предварительные квалификационные оценки автокредитов и сохранит это в базе данных. Проблема заключается в том, что каждое поле должно позволять пользователю вводить в него любые строковые данные и сохранять их в базе данных.Как сохранить данные, которые можно получить?
Большинство полей необходимо преобразовать в десятичные или целые значения для выполнения любых вычислений, поэтому лучше всего просто игнорировать тип данных и использовать строки в базе данных?
Я не тестировал этот подход, но я бы ожидал, что с этим подходом будет трудно найти и отсортировать данные, поскольку каждая вещь будет строкой и должна быть преобразована в настоящий тип данных для выполнения запроса.
Еще одна альтернатива, которую я рассмотрел, состоит в том, чтобы иметь два столбца для каждого поля, для хранения строкового значения, и одно для хранения фактического синтаксического типа. Это звучит немного сложно.
Последнее, что я подумал о сохранении одного дополнительного столбца или таблицы, который будет просто парой значений имен, чтобы поместить все данные, недоступные для этой записи. Я думаю, что это может быть очень сложно создать бизнес-объекты.
Как вы относитесь к этому вопросу?
Почему каждое поле позволяет пользователю вводить любые строковые данные * и * сохранять точные данные в базе данных? ИМО, это непродуманное требование, которое вернется, чтобы укусить вас в конце, так или иначе. – Aaronaught
Я не думаю, что это непродуманное требование - есть очень веские причины, чтобы хранить то, что клиент набирает в веб-форме, и другие очень веские причины для того, чтобы захотеть проанализированная версия полезных данных для обработка. –