Página 1 de 1

Publicado: Jue Mar 21, 2002 3:54 pm
por wilburg
Recien comienzo a utilizar instrucciones SQL en Visual Basic y tengo un problema:
Tengo esta instruccion para generar una consulta, filtrando los registro de una tabla segun el status denominado "RES" la cual contiene un dato dado por el usuario

Set tabla = base.OpenRecordset("select * from solicitud_usuario where solicitud_usuario.analista_asignado = res;")

El resultado de esta busqueda queda vacio, sospecho error en sintaxis para la lectura de la variable "RES", agradeceria quien me pudiera horientar al respecto.

Gracias.

Publicado: Vie Mar 22, 2002 9:10 am
por ABCdatos
Además de entrecomillar el valor con comillas simples, al tratarse 'res' de una variable y no de un texto, no puede quedar dentro de la cadena de texto, hay que sacarla fuera del siguiente modo:

"SELECT * FROM solicitud_usuario WHERE solicitud_usuario.analista_asignado = '" & res & "';"

Saludos.

Publicado: Mié Dic 12, 2007 11:18 am
por Invitado
Pasaba por aquí y he leído lo que comentabais. Me ha solucionado un problema muy gordo, así que me he sentido obligado a agradeceros la ayuda. Y de paso a comentar que aunque en el post no se vea claro, el orden de las comillas para entrecomillar la variable res es: 1º comillas simples, 2º comillas dobles.

Muchas gracias :)

Publicado: Lun Dic 17, 2007 7:23 pm
por Carola77
Hola la respuesta que te dio ABCdatos es la correcta y bien explicada

"Además de entrecomillar el valor con comillas simples, al tratarse 'res' de una variable y no de un texto, no puede quedar dentro de la cadena de texto, hay que sacarla fuera del siguiente modo:

"SELECT * FROM solicitud_usuario WHERE solicitud_usuario.analista_asignado = '" & res & "';"

Saludos. "


el asunto de las comillas es
signo =
sigo de coma = '
signo de comillas ="
signo de criterio para sacar el valor de la variable= &
Variable
signo de criterio para sacar el valor de la variable= &
signo de comillas ="
sigo de coma = '
Punto y coma=;
comillas="
y queda listo.

pd: si quiere eliminar algun espacio en blanco en la respuesta solo debes colocar TRIM o STR

"SELECT * FROM solicitud_usuario WHERE solicitud_usuario.analista_asignado = '" & res & "';"

Publicado: Lun Dic 17, 2007 7:24 pm
por Carola77
disculpa coloque COMA en vez de Comilla simple
comilla= '


eso es todo