Escape-цитата в SQL-выражении Object C - PullRequest
0 голосов
/ 16 февраля 2011

У меня проблема с одинарной кавычкой в ​​sql. Ниже приведено утверждение.

Если имя пользователя - Мама, как мне его выбрать? Я также хочу принять во внимание, что иногда мне, возможно, придется бежать ', а иногда нет

sqlStatement = [NSString stringWithFormat:@"SELECT * FROM USERS where NAME = '%@'",searchKeyword];

Спасибо!

1 Ответ

2 голосов
/ 16 февраля 2011

Вы не должны создавать SQL-запрос вручную таким образом. Это открывает двери для SQL-инъекций всех видов, позволяя злонамеренному пользователю запускать произвольный SQL в вашей базе данных.

Вместо этого вы должны использовать связанные параметры. Смотри http://www.sqlite.org/c3ref/bind_blob.html

(я полагаю, вы собираетесь выполнить запрос SQLite).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...