Znak escape je ', takže budete muset nahradit uvozovku dvěma uvozovkami.
Například,
SELECT * FROM PEOPLE WHERE SURNAME='O'Keefe'
se stává
SELECT * FROM PEOPLE WHERE SURNAME='O''Keefe'
To znamená, že je pravděpodobně nesprávné dělat to sami. Váš jazyk může mít funkci pro únik řetězců pro použití v SQL, ale ještě lepší možností je použít parametry. Obvykle to funguje následovně.
Váš příkaz SQL by byl:
SELECT * FROM PEOPLE WHERE SURNAME=?
Poté, když jej spustíte, předáte „O'Keefe“ jako parametr.
Protože je SQL analyzován před nastavením hodnoty parametru, neexistuje způsob, jak by hodnota parametru změnila strukturu SQL (a je to ještě o něco rychlejší, pokud chcete stejný příkaz spustit několikrát s různými parametry).
Měl bych také zdůraznit, že zatímco váš příklad pouze způsobí chybu, otevíráte se mnoha dalším problémům tím, že správně neuniknete řetězcům. Viz http://en.wikipedia.org/wiki/SQL_injection pro dobrý výchozí bod nebo následující klasický xkcd komiks .