Эквивалентный символ: ', поэтому вам нужно заменить цитату двумя кавычками.
Например,
SELECT * FROM PEOPLE WHERE SURNAME='O'Keefe'
становится
SELECT * FROM PEOPLE WHERE SURNAME='O''Keefe'
Тем не менее, это, вероятно, неправильно делать это самостоятельно. У вашего языка может быть функция, позволяющая избежать строк для использования в SQL, но еще лучше использовать параметры. Обычно это работает следующим образом.
Ваша команда SQL будет:
SELECT * FROM PEOPLE WHERE SURNAME=?
Затем, когда вы выполняете его, вы передаете в "О'Киф" в качестве параметра.
Поскольку SQL анализируется до того, как значение параметра установлено, нет возможности изменить значение параметра в структуре SQL (и это даже немного быстрее, если вы хотите несколько раз запускать один и тот же оператор с разными параметрами).
Следует также отметить, что, хотя ваш пример просто вызывает ошибку, вы открываете себя перед множеством других проблем, не избегая соответствующих строк. См. http://en.wikipedia.org/wiki/SQL_injection для хорошей отправной точки или следующего классического xkcd comic.
См [** Цитирование строкового литерала метод для одной кавычки **] (http://lalitkumarb.com/2014/12/31/quoting-string-literal-technique-to-avoid-erros -due-to-single-quotation-marks-in-the-string /) – 2015-12-18 06:29:53