honey the codewitch Ответов: 1

Кто - нибудь все еще выполняет сложную проверку в хранимых процедурах SQL?


Поэтому я придумал способ сделать простой анализ регулярных выражений и LL(1) внутри СУБД, совместимой с SQL92, используя хранимые процессы и несколько таблиц для анализа и сканирования.

В результате этого, если вы передадите сложные структурированные текстовые данные - что угодно, от URL до электронной почты addy, скажем, JSON, вы можете получить эту вещь для проверки и, возможно, даже нормализации данных для вас.

Но я не хочу тратить силы на то, что никому больше не нужно, и я уже много лет не работаю.

Значит, что - то вроде этого все еще полезно?

Что я уже пробовал:

Я еще ничего не пробовал. Это не совсем такой вопрос

1 Ответов

Рейтинг:
7

Christian Graus

Смысл procs заключается в том, чтобы поместить логику в БД, а также иметь возможность выполнять сложные действия с одним вызовом БД. Я бы никогда этого не сделал, но все сводится к тому, что вы хотите, чтобы логика жила. Я бы сказал, что нет для проверки, ваш код должен не тратить время вашей БД, а сообщать пользователю, что их ввод недействителен.


honey the codewitch

Раньше это было de rigueur, чтобы сделать столько проверки, сколько реалистично в каждом из уровней многоуровневого приложения. По той же причине вы бы очистили входные данные БД на веб-странице, но также и для защиты от атак, если им удастся обеспечить прямое подключение на уровне пользователя к БД.

Но это было много лет назад. 3 ступень-это страшная школа.

В принципе, однако, вы должны были бы иметь веб-страницу, обеспечивающую проверку первого уровня, промежуточное программное обеспечение выполняет проверку 2-го уровня и, где это возможно, выполняет проверку в БД, хранящихся в процедурах.

таким образом, несмотря ни на что, ваши данные защищены от отравления внешними субъектами, независимо от того, на каком уровне они работают.