Найти - Пользователи
Полная версия: преобразование кода для sqlite в mysql
Начало » Базы данных » преобразование кода для sqlite в mysql
1 2 3 4
ZerG
нам не надо тема тутнам надо проблема покань
Iskatel
От скуки займусь некропостингом…

Вся проблема TC в том, что он не понимает, что Prepare оно и в переводе “подготовка”, и нифига конкретного не делает. После Prepare “exec” нужен, чтоб чтото получить. (а вы развели дисскуссию на три страницы)

py.user.next
ZerG
с чего ето нельзя?
Там вопросики как раз для этого сделаны. Попробуй сделать инъекцию с вопросиком и инъекцию с форматом.

ZerG тут правее… вполне можно и форматом и даже плюсиками как ТС, а Prepare не зщищает от инъекций, он для другого. Для того чтоб загнать данные на сервер до выполнения, а потом грузить сервер а не клиента. (с селектами обычно не применяется, а вот запустить какойнить большой инсерт или альтер -это да ). Никакой защиты от иньекций тут нет. И необходимость применения ф-ций “супер-пупер-quote” обязательна.

Да и “вопросики” не ТС поставил, он же сам пишет что скачал пример в нете…

ЗЫ. пруфы гдето тут: http://dev.mysql.com/doc/refman/5.7/en/sql-syntax-prepared-statements.html
py.user.next
Iskatel
ZerG тут правее… вполне можно и форматом и даже плюсиками как ТС, а Prepare не зщищает от инъекций, он для другого.
То, что он защищает от инъекций написано и в питонячьей документации, и в документации к mysql (ты не прочитал ссылку, которую сам же и дал).
mysql.com. prepared
Using prepared statements with placeholders for parameter values has the following benefits:

Less overhead for parsing the statement each time it is executed. Typically, database applications process large volumes of almost-identical statements, with only changes to literal or variable values in clauses such as WHERE for queries and deletes, SET for updates, and VALUES for inserts.

Protection against SQL injection attacks. The parameter values can contain unescaped SQL quote and delimiter characters.

Основная функция prepare - скомпилировать запрос, чтобы туда можно было разные данные подставлять и время на парсинг одного и того же не тратилось. Но в то же время эти заменители полей защищают от вставки всяких левых кавычек.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB