SQL Escape/Unescape attiecas uz teksta ievades attīrīšanas procesu, lai to varētu droši iegult SQL priekšrakstos.
Escape modificē speciālās rakstzīmes (piemēram, pēdiņas vai atpakaļvērstās slīpsvītras) tā, lai novērstu sintakses kļūdas vai ļaunprātīga koda izpildi.
Escape noņemšana pārveido evakuētās rakstzīmes atpakaļ to sākotnējā formā, parasti attēlošanai vai tālākai apstrādei.
Lai novērstu SQL injekcijas uzbrukumus, kur ļaunprātīga ievade var mainīt SQL vaicājuma loģiku.
Lai izvairītos no sintakses kļūdām vaicājumos, ja dati satur tādas rakstzīmes kā ', " vai \.
Lai saglabātu datu integritāti, nodrošinot, ka lietotāja ievade tiek saglabāta un izgūta tieši tā, kā tā ievadīta.
Aizsoļa noņemšana tiek veikta:
Dubultojot vienpēdiņas virknēs (piemēram, 'O'Brien' kļūst par 'O''Brien').
Izmantojot iebūvētās datubāzes funkcijas vai bibliotēkas, lai pareizi atslēgtu ievades vērtības.
Aizsoļa noņemšana notiek, ja datu izgūšana, ko bieži vien automātiski apstrādā datubāze vai jūsu lietojumprogrammas slānis.
Mūsdienu izstrādē to parasti pārvalda parametrizēti vaicājumi vai ORM (objektu-relāciju kartētāji), kas droši un automātiski apstrādā aizskaršanas kodu.
Kad ievieto vai vaicā lietotāja ievadi tieši neapstrādātā SQL (nav ieteicams, ja vien tas nav pareizi aizskarts).
Strādājot ar mantotajām sistēmām vai neapstrādātām SQL virknēm, kur nav ieviesta automātiskā aizsardzība.
Vienmēr izmantojiet aizskaršanas kodu ievades kodiem, ja vien neizmantojat sagatavotus paziņojumus vai parametrizētus vaicājumus, kas ir vēlamās un drošākās alternatīvas.