Я новичок в C # и SQL. Но за последние несколько лет во время изучения оба в колледже вопрос действительно начинает гореть внутри меня. Вот оно:
Мне кажется, что существует два очень общих способа обработки входной проверки (I.E. Проверка необходимых полей и данных в правильных диапазонах ECT).
Первый, и путь традиционно показан: как только вы разработаете свой интерфейс UI и подключили его к концу базы данных. В пользовательском интерфейсе вы проверяете правильный вход, такой как пустые текстовые поля, диапазоны номеров или для обеспечения установки радио или установочного ящика.
Второе, и способ, показанный в разработке базы данных: установить проверки ограничения на полях, таких как нулевые значения, разрешенные, уникальные значения и даже диапазоны и необходимые поля.
Мой дилемма это. Учитывая, что на современных языках, таких как C #, вы можете сделать общую обработку Exection, а также учитывая, что основная толерантность неисправностей лиги встроена в большинство баз данных, таких как SQL Server, в отношении обращения с изменениями данных или нет. Подобные детали, и к этому уровню, было бы трудно программировать во всем, кроме самых простых программ.
Итак, мой вопрос, почему бы не создать все требования непосредственно в таблицу в конце базы данных. Воспользуйтесь вышеупомянутой достойкой неисправности, и просто забудьте о программировании, если операторы для обеспечения ввода правильных данных, а вместо этого просто используйте универсальный обработчик для вылова, если данные не приведены.
Возможно, именно так это делается, если так, то я бы очень хотел узнать наверняка. Если нет, почему? Мое предпочтение - избегать записи кода, когда это возможно. Меньше кода, меньше отладки и меньше проблем, когда дело доходит до обновления. Поэтому я бы склонен идти с этим подходом, чтобы позволить вернутому конец БД выполнить работу. Это вообще правильная вещь, чтобы сделать.
Я знаю, что общая обработка Exection считается «дорогим» с точки зрения ресурсов. Но провигаций, как только вы получите последние 5 или 10, если выступления, чтобы обрабатывать разные поля и их ограничения, он должен быть более эффективным кодом, чтобы просто сделать обработчик General Exection. Это, кажется, легче понять в целом. (По крайней мере, как я это делаю).
Спасибо за вашу помощь с этим.