Visual Basic.NET - Consulta parametros de texbox sin datos.

   
Vista:

Consulta parametros de texbox sin datos.

Publicado por Francisco (3 intervenciones) el 26/07/2017 11:52:39
Hola a todos, y gracias de antemano por vuestra ayuda. Y perdonad si mi pregunta es muy simple, soy nuevo en esto.

Tengo una aplicación en vb 2010 que trabaja con datos de Access 2010.
En un formulario tengo dos campos txbox. txtT1 , txT2 (tipo de datos string) y un Datagridview.
Dependiendo del valor introducido en estos campos, leo datas de la tabla Tabla1 en la base de datos y muestro el resultado en el Datagridview.

Todo funciona bien si pongo datos en los dos Txbox, pero si dejo alguno vacío, no se ejecuta la consulta sql y no muestra ningún dato.

La consulta que utilizo es:
"Select Tabla1.Campo1, Tabla1, campo2, Tabla1.Campo3 From Tabla1 " &_
"Where Tabla1.Campo1 = ' " & TxT1.text & " ' and Tabla1.Campo2 = ' " & TxT2.text & " ' "

Mi pregunta es como puedo actuar cuando uno o los dos campos Txtbox del formulario no cantinen datos.
En otros formularios tengo 8 campos de búsqueda y el problema se me multiplica.

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
Imágen de perfil de jhuorley

Consulta parametros de texbox sin datos.

Publicado por jhuorley (2 intervenciones) el 27/07/2017 00:05:03
Debes de validar tus campos antes de hacer la consulta ejemplo:
1
If TxT1.Text != "" & TxT2.Text != "" then
1
 ' aquí recien realizas las consultas
1
else
1
MessageBox.Show("debes llenar los campos")
1
End If
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

Consulta parametros de texbox sin datos.

Publicado por FRANCISCO DE JAVIER CANELO TEJEDA (3 intervenciones) el 27/07/2017 08:49:22
jhuorley Gracias por tu Respuesta.

Pero los campos pueden quedar vacíos para que muestren todos los registros o meter algún dato para que los filtre por el dato introducido en el campo.

Estoy probando algo del tipo:

1
2
3
4
5
SQL = "Select Tabla1.Campo1, Tabla1, campo2, Tabla1.Campo3 From Tabla1 "
 
IF TXT1.TEXT <> " " THEN
     SQL = SQL + "WHERE ((Tabla1.campo1) = ' " & TxT1.text  & " ')"
end if

Y así con bloques IF ir añadiendo el resto de condiciones si las hay.

Muchas GRACIAS por tu repuesta.
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

Consulta parametros de texbox sin datos.

Publicado por FRANCISCO DE JAVIER CANELO TEJEDA (3 intervenciones) el 27/07/2017 09:33:26
Hola a todos.

Ya he encontrado como hacerlo de manera más fácil y es poniendo en la cláusula Where el carácter comodín %

La consulta que utilizo ahora es:

"Select Tabla1.Campo1, Tabla1, campo2, Tabla1.Campo3 From Tabla1 " &_
"Where Tabla1.Campo1 = ' " & TxT1.text & "% ' and Tabla1.Campo2 = '%" & TxT2.text & "% ' "

Así si no pongo ningún dato en los campos, muestra todos los datos y si pongo algún valor
en el campo txt1 muestra todos los que empiezen por el valor introducido
en el campo txt2 muestra todos los valores que contengan en cualquier lugar del dato el valor introducido.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar