100 % local: tus datos nunca salen de tu navegador

Escapar SQL — un literal para tu consulta

Duplica las comillas simples y envuelve el resultado: un literal de cadena ANSI SQL completo, listo para la consulta que escribes a mano en un cliente.

Instantáneo Privado Cero cookies

Entrada Text

Salida SQL Escaped

Qué hace esta herramienta

Dos cosas: duplica cada comilla simple —así escribe ANSI SQL una comilla dentro de un literal— y entrecomilla el resultado, de modo que lo que sale es un literal completo.

O'Brien   →   'O''Brien'

El SQL estándar no tiene escape con barra invertida, así que no se transforma nada más.

El entrecomillado es lo que hace exacto el viaje de ida y vuelta. Sin él, una comilla suelta se escapa a '', que la herramienta de desescape lee como una cadena vacía entrecomillada: el carácter desaparece. quote_literal() de PostgreSQL y SqlString.escape() de Node devuelven la forma entrecomillada por la misma razón. Desactiva Con comillas si solo quieres el interior, para pegarlo entre tus propias comillas; esa forma no es reversible.

Léelo antes de usarla

Escapar comillas no es una defensa contra la inyección SQL. Es una ayuda de sintaxis, no una frontera de seguridad. Cualquier valor que venga de un usuario, una petición, un fichero u otro sistema pertenece a una consulta parametrizada — un marcador que el driver enlaza por separado, de modo que el valor nunca forma parte del texto de la sentencia y ningún entrecomillado puede cambiar el significado de la consulta.

Esta herramienta es para el otro caso: un literal que estás escribiendo tú mismo en una migración, un juego de datos de prueba o un SELECT puntual, cuyo texto contiene un apóstrofo y quieres la forma correcta sin ponerte a contar comillas.

Salvedad sobre dialectos

La regla ANSI es el denominador común más seguro, pero no es universal. MySQL, salvo que funcione con NO_BACKSLASH_ESCAPES, también trata \ como carácter de escape dentro de los literales — así que un valor que termina en barra invertida no queda del todo cubierto solo duplicando comillas. Comprueba tu dialecto antes de confiar en esto para algo que no sea SQL escrito a mano.

Privado por diseño

Todo se ejecuta localmente en tu navegador con JavaScript. Tus datos nunca se suben a un servidor, lo que hace que la herramienta sea segura para contenido sensible y funcione sin conexión.

Preguntas frecuentes

¿Esto me protege de la inyección SQL?
No, y no deberías usarlo para eso. Escapar comillas no es una frontera de seguridad: la única defensa fiable es la consulta parametrizada, donde el valor nunca pasa a formar parte del texto de la sentencia. Usa esta herramienta para SQL que escribes tú, no para SQL construido a partir de entrada de usuario.
¿Por qué solo se duplica la comilla simple?
Porque es lo que dice el estándar ANSI. En SQL estándar un literal de cadena se delimita con comillas simples y una comilla interna se escribe dos veces — no existe escape con barra invertida.
¿Basta con eso para MySQL?
No necesariamente. A menos que NO_BACKSLASH_ESCAPES esté activado, MySQL también trata la barra invertida como carácter de escape dentro de los literales, así que una barra final puede cambiar cómo se lee la comilla siguiente. Esta herramienta aplica solo la regla ANSI.
¿Por qué la salida incluye las comillas envolventes?
Porque ese es el literal entero, y es la única forma que sobrevive a un viaje de ida y vuelta. Una comilla suelta escapada sin entrecomillar da `''`, indistinguible de una cadena vacía entrecomillada. Desactiva **Con comillas** si solo quieres el interior.

Convertidores relacionados