Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #11  
Antiguo 12-11-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Hola,

Lo que tengo es una consulta de este tipo:

Código SQL [-]
select * from tabla
where
  campo1 like :campo1 and
  campo2 like :campo2 and
  campo3 like :campo3
  ...

Al momento de ejecutar la consulta, sustituyo los parámetros de esta manera:

Código Delphi [-]
if Edit1.Text = '' 
  then Query.ParamByName('campo1').AsString = '%'
  else Query.ParamByName('campo1').AsString := Edit1.Text;

if Edit2.Text = '' 
  then Query.ParamByName('campo2').AsString = '%'
  else Query.ParamByName('campo2').AsString := Edit2.Text;

if Edit3.Text = '' 
  then Query.ParamByName('campo3').AsString = '%'
  else Query.ParamByName('campo3').AsString := Edit3.Text;

...

El usuario, si quiere, puede introducir el comodín % en sus edits para coincidencias parciales, pero si deja en blanco un edit, yo le pongo el comodín para que así ese campo realmente no forme parte de la condición (la comparación campo like '%' siempre será true).

De esta manera, el usurio puede buscar por uno o más campos, sin tener que especificar con un botón de radio o una lista de selección múltiple u otros artilugios, los campos que deben incuirse en la búsqueda; además de que, como tal, la consulta SQL es fija, si necesidad de construirla al vuelo.

// Saludos
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
busqueda tipo explorador josi Varios 2 02-02-2009 17:57:58
Problema con búsqueda en campo tipo MONEY micki MS SQL Server 3 19-07-2007 17:10:59
que CVS me conviene?? pvizcay Varios 6 18-09-2006 21:17:58
Que tipo de reporte me conviene Gustavo Gowdak Impresión 3 21-08-2006 21:55:56
Busqueda en campos tipo timestamp gescoto99 SQL 1 14-07-2005 12:17:16


La franja horaria es GMT +2. Ahora son las 15:46:07.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi