SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: joseag5 en Jueves 5 de Diciembre de 2002, 11:55

Título: Re: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: joseag5 en Jueves 5 de Diciembre de 2002, 11:55
por favor que alquien me ayude. Tengo una sentencia sql en la cual quiero concatenar los valores de un combobox, que almacena el nombre de la tabla y por otro lado un textbox donde le digo un numero para buscar en la tabla.Mi sentencia la tengo escrita así:

"Select * from '" & Combo1.Text & "'  where numero =  '" & Variable & "'"

(todo escrito en una misma línea)
La cuestión es que me da error en la sentencia select y estoy seguro que es un problema al concatenar ¿QUE ESTOY PONIENDO MAL? ME TIENE LOCO ......
Ayudadme please........ya he probado de muchas maneras y me he atascado, y estoy convencido que es una chorrada pero no la veo....
Muchas gracias
Título: Re: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: ROBER.29 en Jueves 5 de Diciembre de 2002, 12:29
Tienes mal la sentencia, la sentencia SQL debería ser así:
SELECT FROM " & Combo1.text & " WHERE NUMERO = " & Variable
Así sería en el caso que el campo Numero sea de tipo entero y en el caso de que sea de tipo char la sentencia sería:

SELECT FROM " & Combo1.text & " WHERE NUMERO LIKE '" & Variable & "'"

Espero que asi te funcione en el caso contrario dimelo y te intento dar otra solución.
Saludos.
Título: Re: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: joseag5 en Jueves 5 de Diciembre de 2002, 13:31
Citar
Originalmente publicado por ROBER.29
Tienes mal la sentencia, la sentencia SQL debería ser así:
SELECT FROM " & Combo1.text & " WHERE NUMERO = " & Variable
Así sería en el caso que el campo Numero sea de tipo entero y en el caso de que sea de tipo char la sentencia sería:

SELECT FROM " & Combo1.text & " WHERE NUMERO LIKE '" & Variable & "'"

Espero que asi te funcione en el caso contrario dimelo y te intento dar otra solución.
Saludos.


Pues sigo igual que estaba.
Tanto el combo como la caja de texto son char, pero que no quiere y no quiere, al final tendré que meter código a saco cuando lo puedo hacer en una sola línea.
Haber si me das otra solucion, por que el programa no me pasa de esa linea.

Gracias
Título: Re: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: ROBER.29 en Jueves 5 de Diciembre de 2002, 17:09
Que error te pone cuando se ejecuta la consulta?
Has comprobado que combo1.text no esté vacío al igual que le Variable?
Título: Re: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: Jose Arriagada en Jueves 5 de Diciembre de 2002, 17:39
Asumiendo que las tablas que se encuentran en el combobox todas tienen un campo llamado numero, entonces, apoyo a ROBER.29. ¿Que numero y mensaje te envia?

Si no, tendras que revizar que la tabla que seleccionas en el combobox, tenga el campo que estas filtrando, en este caso, NUMERO.
Título: Re: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: Gago en Jueves 5 de Diciembre de 2002, 18:09
Fíjate en el tipo de dato de la tabla donde guardas, porque seguramente el error diga algo así como que "no coinciden los tipos". Lo digo porque un = y un LIKE en una Select no es lo mismo. A lo mejor tienes el tipo de dato numérico en la tabla y le estás intentando meter un char.
Título: sigo desesperado con sentencia sql ¡¡ayuda!!!
Publicado por: jlmartinez en Jueves 5 de Diciembre de 2002, 19:27
Vamos a ver.

Si el campo NUMERO en la tabla es numérico la sentencia seria asi:

"select * from " & combobox.text & " where numero = " & variable

tienes que tener en cuenta que que si varible es string, tienes que convertirla a numerico. Val(variable)

si el campo numero es de tipo texto entonces la sentencia seria asi:

"select * from " & combobox.text & " where numero = '" & variable & "'"

donde '" es comilla simple y doble y "'" es comilla doble, simple y doble otra vez.

Pruebalo que te funcionará seguro.


Un Saludo


Jose Luis

jlmartinez@arenal2000.es