Параметризация ваших переменных. Шутки в сторону. Во всех современных средах есть средства для этого, и вам не нужно беспокоиться о escape-последовательностях типа \ ', которые превратятся в \' в вашей схеме (в Oracle), которая становится экранированной кавычкой и обычной (завершающей) кавычкой.
Существует множество других трюков, которые я не могу перечислить, поскольку они бесполезны.
Опять же: параметризация ваших переменных. Шутки в сторону. Если вы не научитесь использовать параметризацию, вы станете другой взломанной статистикой.
РЕДАКТИРОВАТЬ: прочитайте ссылки в ответе Павла, и вот еще: http://unixwiz.net/techtips/sql-injection.html
Независимо от того, насколько вы умны, вы считаете, что санация струн неверна. Особенно , если вам приходится работать с несколькими бэкэндами.
Составление запросов из строк - это одна из немногих вещей, из-за которых я увольняю людей ... риск, который такой программист представляет для компании, больше, чем что-либо еще, что они приносят на стол (особенно после того, как мы Совершенно очевидно, что мы не примем такой код в первый день и предоставим структуру сущностей, которая делает такие вещи ненужными).