Foros del Web » Programación para mayores de 30 ;) » Programación General »

VB6 - Mascara para que una SQL me acepte comillas 'simples' y "dobles"

Estas en el tema de VB6 - Mascara para que una SQL me acepte comillas 'simples' y "dobles" en el foro de Programación General en Foros del Web. Lo dicho, necesito como poner una mascara para que no me de error la sql al guardar un campo de texto que contenga las comillas ...
  #1 (permalink)  
Antiguo 26/05/2004, 08:13
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Pregunta VB6 - Mascara para que una SQL me acepte comillas 'simples' y "dobles"

Lo dicho, necesito como poner una mascara para que no me de error la sql al guardar un campo de texto que contenga las comillas dobles y simples:

ej.

INSERT INTO Tabla (Nombre) VALUES (' Jose, Alias "Pepe" ');

en codigo VB:

Dim sql,nombre as String
' nombre seria igual a una cadena "Jose, Alias "Pepe" ", pero se rompe en la " entre alias y pepe y al final habria cadena vacia ""

sql = "INSERT INTO Tabla (Nombre) VALUES ('" & nombre & " ');"

Bueno, haber si me podeis ayudar.
__________________
Alguien sabe como es?
  #2 (permalink)  
Antiguo 26/05/2004, 10:53
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 22 años
Puntos: 1
Prueba con esto:

Código:
sql = "INSERT INTO Tabla (Nombre) VALUES ('" & Replace(Nombre, """", Chr(34)) & " ');"
__________________
Ariel Avelar
  #3 (permalink)  
Antiguo 28/05/2004, 00:57
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Gracias pero lo que me has puesto solo me soluciona las comillas dobles ", pero con las simples me sigue dando error.

El tema es que el campo de donde procede el dato, al final va a tener formato similar a: "##'#\##\###'##" donde las # pueden ser cualquier letra y las comillas simples pueden ir en cualquier sitio.

Perdon si no me explique bien al poner el hilo.

haber si me podeis ayudar
__________________
Alguien sabe como es?
  #4 (permalink)  
Antiguo 28/05/2004, 13:11
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 22 años
Puntos: 1
Las comillas simples las puedes solucionar igual que las comillas dobles:
Código:
VariableTexto = Replace(VariableTexto, "'", chr(39))
Si es en la misma variable del inicio, sería:
Código:
sql = "INSERT INTO Tabla (Nombre) VALUES ('" & Replace(Replace(Nombre, """", Chr(34)), "'", Chr(39)) & " ');"
Saludos
__________________
Ariel Avelar
  #5 (permalink)  
Antiguo 31/05/2004, 01:29
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
Gracias, esto si me vale. Un saludo
__________________
Alguien sabe como es?
  #6 (permalink)  
Antiguo 04/06/2004, 04:18
 
Fecha de Ingreso: mayo-2004
Mensajes: 86
Antigüedad: 20 años, 6 meses
Puntos: 0
No me funciona el ultimo ejemplo que me pusisteis. Alguien me puede dar otra solucion?????
__________________
Alguien sabe como es?
  #7 (permalink)  
Antiguo 04/06/2004, 05:01
 
Fecha de Ingreso: enero-2004
Mensajes: 396
Antigüedad: 20 años, 10 meses
Puntos: 0
Hzle un urlencode cuando guardes el datos en la base de datos, de esa forma te valdra para todo lo que uses, despuset, al obtenerlo, decodificalo con una funcion que haga justo lo contrario.
  #8 (permalink)  
Antiguo 04/06/2004, 12:39
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 22 años
Puntos: 1
¿Qué falla te arroja?
__________________
Ariel Avelar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:32.