Visual Basic - consultas

Life is soft - evento anual de software empresarial
 
Vista:

consultas

Publicado por alejandro esteban (92 intervenciones) el 27/01/2003 13:46:15
hola, tengo un problema con una consulta, quiero ingresar un texto desde un formulario y luego que me muestre los datos en un dbgrid en otro form. el problema es que cuando envio los datos a consultar me sale el siguiente mensaje:
"Pocos parametros, se esperaba 1"
no se si estoy escribiendo bien la sentencia ya que uso una variable tipo cadena para almacenar el dato a consultar. Bueno la sentencia es asi:.
Data1.RecordSource = _
"SELECT nombre, descripcion FROM PRODUCTOS where [nombre] = " + texto + " "
estoy trabajando con dao y uso una base de access.
muchas gracias!
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:consultas

Publicado por Rodolfo del Peru (454 intervenciones) el 27/01/2003 16:08:38
Tu problema es sencillo, lo que sucede es que estas usando "+" para concatenar, debes usar "&".

Saludos desde Lima
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:consultas

Publicado por Pedro Luis (878 intervenciones) el 27/01/2003 19:36:34
Yo en cambio creo que el final deberia ser " .... where nombre=" + texto, por ideas que no quede
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:consultas

Publicado por Jesús (10 intervenciones) el 28/01/2003 08:26:09
Yo uso el siguiente metodo.

'Establezco la sentencia. Cuando llego a nombre= cierro sentencia y la continuo en la linea inferior.

sentencia= "SELECT * from tabla WHERE nombre="
sentencia= sentencia & " ' " & Text1.Text & " ' "

Data1.Recordsource= sentencia
Data1.Refresh

Si lo que pretendo es hacer una busqueda entre fechas:

sentencia = "SELECT * FROM tabla WHERE fecha BETWEEN"
sentencia = sentencia & "#" & fecha1 & "#"
sentencia = sentencia & "#" & fecha2 & "#"
sentencia = sentencia & " ORDER BY fecha"

Data1.Recordsource= sentencia
Data1.Refresh

Espero no haberme equivocado, ya que lo hago de memoria. A ver si te sirve de ayuda.

Un saludo.

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:consultas

Publicado por Jesús (10 intervenciones) el 28/01/2003 08:29:48
Pues si me he equivocado, he olvidado algo. La correcta entre fechas seria:

sentencia = "SELECT * FROM tabla WHERE fecha BETWEEN"
sentencia = sentencia & "#" & fecha1 & "#"
sentencia= sentencia " and "
sentencia = sentencia & "#" & fecha2 & "#"
sentencia = sentencia & " ORDER BY fecha"

Data1.Recordsource= sentencia
Data1.Refresh
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