Ver Mensaje Individual
  #6 (permalink)  
Antiguo 10/07/2012, 16:56
Avatar de GORI0056
GORI0056
 
Fecha de Ingreso: julio-2009
Mensajes: 38
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: Filtrar datos de gridview con tres textbox

Perdona por tardar tanto en responder, prueba con lo siguiente:

SelectCommand="SELECT [nombre], [dni], [apellido] FROM ["Nombre de la Tabla"] WHERE (([nombre] LIKE '%' + @nombre + '%') OR ([dni] LIKE '%' + @dni + '%') OR ([apellido] LIKE '%' + @apellido + '%'))"

<SelectParameters>
<asp:ControlParameter ControlID="apellidoTextBox" DefaultValue="%"
Name="apellido" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="dniTextBox" DefaultValue="%"
Name="dni" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="nombreTextBox" DefaultValue="%"
Name="nombre" PropertyName="Text" Type="String" />
</SelectParameters>

Como veras en el Where me cambiado AND por OR , con AND se ha de cumplir las
tres condiciones para mostrar datos, mientras que con OR puede mostrar datos
por cualquiera de los tres campos. Ademas no deberias de dejar en ControlParameter el valor DefaultValue vacio.

Saludos,


Cita:
Iniciado por leonobarg Ver Mensaje
gracias
probe cambiando like por el igual pero no me muestra nada, solo hice ese cambio. Dejo el codigo, aclaro que el dni es un integer y nombre y apellido varchar.
ESPERO AYUDA

Código:
SelectCommand="SELECT [nombre], [dni], [apellido] FROM [paciente] WHERE (([nombre] LIKE '%' + @nombre + '%') AND ([dni] = @dni) AND ([apellido] LIKE '%' + @apellido + '%'))" >

<SelectParameters>
<asp:ControlParameter ControlID="nombreTextBox" DefaultValue="" 
Name="nombre" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="dniTextBox" DefaultValue="" 
Name="dni" PropertyName="Text" Type="Int32" />
<asp:ControlParameter ControlID="apellidoTextBox" DefaultValue="" 
Name="apellido" PropertyName="Text" Type="String" />
</SelectParameters>
NUEVAMENTE GRACIAS.-