Cosa fa questo strumento
Due cose: raddoppia ogni apice singolo — è così che l’SQL ANSI scrive un apice dentro un literal — e racchiude il risultato, così ciò che torna è un literal completo.
O'Brien → 'O''Brien'
L’SQL standard non ha escape con barra rovesciata, nient’altro viene trasformato.
È la racchiusura a rendere esatto il viaggio di andata e ritorno. Senza, un apice isolato diventa '', che lo strumento di unescape legge come stringa vuota fra apici: il carattere sparisce. quote_literal() di PostgreSQL e SqlString.escape() di Node restituiscono la forma racchiusa per la stessa ragione. Disattiva Con apici se vuoi solo l’interno, da incollare fra apici tuoi; quella forma non è reversibile.
Da leggere prima di usarlo
Fare l’escape degli apici non è una difesa contro la SQL injection. È un aiuto di sintassi, non un confine di sicurezza. Qualsiasi valore che arrivi da un utente, da una richiesta, da un file o da un altro sistema va in una query parametrizzata — un segnaposto che il driver associa separatamente, così il valore non diventa mai parte del testo dell’istruzione e nessuna virgolettatura può cambiare il significato della query.
Questo strumento serve per l’altro caso: un literal che stai scrivendo tu in una migrazione, in un set di dati di prova o in un SELECT estemporaneo, il cui testo contiene un apostrofo e di cui vuoi la forma giusta senza metterti a contare gli apici.
Avvertenza sui dialetti
La regola ANSI è il denominatore comune più sicuro, ma non è universale. MySQL, a meno che non giri con NO_BACKSLASH_ESCAPES, tratta anche \ come carattere di escape dentro ai literal — quindi un valore che finisce con un backslash non è del tutto coperto dal solo raddoppio degli apici. Controlla il tuo dialetto prima di affidarti a questo per qualcosa che non sia SQL scritto a mano.
Privato per progettazione
Tutto viene eseguito localmente nel browser con JavaScript. I tuoi dati non vengono mai caricati, quindi lo strumento è sicuro per contenuti sensibili e funziona anche offline.