Параметризация SQL против экранирования - PullRequest
0 голосов
/ 10 декабря 2010

Если выбранный вами язык / база данных имеет встроенную функцию для экранирования ввода пользователя (например, mysql_real_escape_string), каковы аргументы для параметризации SQL?Возможно ли, что mysql_real_escape_string может в какой-то момент оставить приложение уязвимым?

Я использую параметризацию, потому что мне сказали / прочитали, что это лучший способ, но я не хочу просто слепо следовать.Любое понимание?Спасибо!

1 Ответ

1 голос
/ 10 декабря 2010

Аргументы для параметризации производительность .

Если вы собираетесь выполнить следующее предложение несколько раз:

insert into table (col1, col2) values (?, ?);

Лучше использовать параметры, поскольку запрос будет оцениваться только (анализ, анализ плана и вычисления) один раз и будет выполняться много раз.

...