teclado simple reemplazar quitar insertar guardar comillas comilla apostrofe mysql escaping

mysql - simple - quitar comillas php



¿Cómo escapar de apóstrofo('') en MySql? (9)

La documentación de MySQL dice que debería ser /' . Sin embargo, tanto scite como mysql muestran que '''' funciona. Vi eso y funciona. ¿Que debería hacer?


Aquí hay un ejemplo:

SELECT * FROM pubs WHERE name LIKE "%John''s%"

Simplemente use comillas dobles para incluir la comilla simple.

Si insistes en usar comillas simples (y la necesidad de escapar del personaje):

SELECT * FROM pubs WHERE name LIKE ''%John/'s%''


Creo que si tiene un punto de datos con un apóstrofo, puede agregar un apóstrofo antes del apóstrofo

p.ej. ''Este es el lugar de John''

Aquí MYSQL asume dos frases ''Este es el lugar de John''

Puedes poner ''Este es el lugar de John''. Creo que debería funcionar de esa manera.


El estándar SQL usa cotizaciones duplicadas; MySQL tiene que aceptar eso para ser razonablemente compatible.

''He said, "Don''''t!"''


Este trabajó:

name = ''John O''Brien'' name = name.replace("/'", "///'")


Hay tres formas que conozco. La primera no es la más bonita y la segunda es la forma común en la mayoría de los lenguajes de programación:

  1. Use otra cita simple: ''I mustn''''t sin!''
  2. Usa el carácter de escape / antes de la comilla simple '' : ''I mustn/'t sin!''
  3. Use comillas dobles para encerrar cadena en lugar de comillas simples: "I mustn''t sin!"

La documentación de MySQL que cites en realidad dice un poco más de lo que mencionas. También dice:

Un " '' " dentro de una cadena citada con " '' " se puede escribir como " '''' ".

(Además, está vinculado a la versión 5.0 de MySQL de la Tabla 8.1. Secuencias especiales de escape de caracteres , y la versión actual es 5.6, pero la actual Tabla 8.1. Secuencias de escape de caracteres especiales se ve bastante similar).

Creo que la nota de Postgres en el parámetro backslash_quote (string) es informativa:

Esto controla si una comilla puede ser representada por /' en un literal de cadena. La forma preferida de SQL estándar para representar una comilla es doblarla ( '''' ) pero PostgreSQL también ha aceptado históricamente /' . Sin embargo, el uso de /' crea riesgos de seguridad ...

Eso me dice que usar un carácter de comillas simples duplicadas es una mejor elección general y de largo plazo que usar una barra invertida para escapar de la comilla simple.

Ahora, si también desea agregar la elección del idioma, la elección de la base de datos SQL y sus caprichos no estándar, y la elección del marco de consulta para la ecuación, entonces puede terminar con una opción diferente. No das mucha información sobre tus limitaciones.


Lo que creo que user2087510 significaba era:

name = ''something'' name = name.replace("''", "//'")

También lo he usado con éxito.


Reemplace la cadena

value = value.replace(/''/g, "//'");

donde el valor es su cadena que va a almacenar en su base de datos.

Promover,

Paquete de NPM para esto, puedes tenerlo en cuenta

https://www.npmjs.com/package/mysql-apostrophe


solo escriba '''' en lugar de '' quiero decir dos veces ''