SQL - problema con los ' (apóstrofes) de los nombres

 
Vista:

problema con los ' (apóstrofes) de los nombres

Publicado por Patricia (8 intervenciones) el 21/03/2003 10:16:11
Tengo una base de datos en SQL server. Necesito insertar y modificar nombres de locales y resulta que muchos tienen el símbolo ' en su nombre por ejemplo PAPI'S. Cuando genero la sentencia Sql para insertarlo como es un campo de tipo texto tiene que ir entre ' ' y ese símbolo me corta las cadenas y no entiende la sentencia. ¿Como puedo salvar ese símbolo? porque los nombres los tengo que dejar así.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problema con los ' (apóstrofes) de los nombres

Publicado por Gerardo (10 intervenciones) el 21/03/2003 17:00:26
Hola,

los apostrofes te cortan las cadenas de sql. Tienes que reemplazarlas por doble comilla. Yo lo hago con un replace(cadena,"'","''")

Espero te ayude
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No me vale esa solución

Publicado por patricia (8 intervenciones) el 24/03/2003 09:43:16
No puedo reemplazar los apostrofes con comillas dobles porque la sentencia sql va dentro de una variable string de visual basic que ya va entre dobles comillas. ¿Se os ocurre otra cosa?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No me entendiste

Publicado por Gerardo (10 intervenciones) el 25/03/2003 15:55:35
no reemplazas por comillas dobles, sino por dos comillas simples, el sql al ver dos comillas simples te coloca una en la base de datos,
copia el ejemplo que te di en visual, ahi vas a ver que tenia comillas simples en el replace
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No me vale esa solución

Publicado por Isaías Islas (5072 intervenciones) el 25/03/2003 23:29:17
Esta es una prueba de mi amigo Eladio Rincon

create table prueba
( valor varchar (100))
go

insert into prueba ( valor )
values ( 'd''leon' )

create proc InsertarPrueba
@valor varchar(100)
as
insert into prueba ( valor )
values ( @valor )

go

declare @cadena varchar(100)
set @cadena = 'd''leon'
exec InsertarPrueba @cadena

--
desde vb por ejemplo, harías algo así:
Dim cadena As String
cadena = "d'leon"
' Aquí crearías y definiría el sp.
cmd.parameters("@valor").value = cadena
cmd.execute

--

select * from Prueba
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar