Saltar al contenido

¿Cómo insertar un valor que contiene un apóstrofe (comillas simples)?

Solución:

Escapa del apóstrofo (es decir, duplica el carácter de comillas simples) en tu SQL:

INSERT INTO Person
    (First, Last)
VALUES
    ('Joe', 'O''Brien')
              /
          right here  

Lo mismo se aplica a las consultas SELECT:

SELECT First, Last FROM Person WHERE Last="O"'Brien'

El apóstrofo, o comilla simple, es un carácter especial en SQL que especifica el comienzo y el final de los datos de cadena. Esto significa que para usarlo como parte de sus datos de cadena literal necesita escape el carácter especial. Con una sola cotización, esto generalmente se logra duplicando su cotización. (Dos caracteres de comillas simples, no comillas dobles en lugar de comillas simples).

Nota: Solo debe preocuparse por este problema cuando edita datos manualmente a través de una interfaz SQL sin procesar, ya que escribir consultas fuera del desarrollo y las pruebas debería ser algo poco común. En el código hay técnicas y frameworks (dependiendo de su pila) que se encargan de escapar de caracteres especiales, inyección SQL, etc.

Solo tienes que duplicar las comillas simples …

insert into Person (First, Last)
values ('Joe', 'O''Brien')

Necesitas escapar del apóstrofe. En T-SQL esto es con un apóstrofe doble, por lo que su insert declaración se convierte en:

Insert into Person
(First, Last)
Values
'Joe', 'O''Brien'
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *