Delphi - consultas dinamicas

 
Vista:

consultas dinamicas

Publicado por pipoquita (9 intervenciones) el 09/09/2008 02:23:59
Hola necesito ayuda sobre consultas dinamicas, existe alguna manera de realizarlos desde codigo, lo que quiero hacer es una consulta donde la condicion se haga segun lo que el usuario quiere en tiempo de ejecucion ejem: el usuario elige la opcion nombre e introduce el nombre de un paciente, el sistema muestra una lista de los pacientes con ese nombre, pero sobre esa lista quiere que se elija solo los mayores de 21 años y elige la opción edad e introduce los rangos de edad,sobre esa lista quiere que se elija cuales han tenido cierta enfermedad, entonces el usuario elige la opcion en enfermedad e introduce la enfermedad y asi el usuario puede seleccionar una o varias opciones de mi pantalla sobre las cuales quiere la consulta, diganme como hago que la condicion cambie y como envio diversa cantidad de parametros si no se sabe cuantas y cuales son o de que tipo son.

Me dijeron que para hacer esto podria usar cubos de decisión pero no se como manejarlos, espero puedan ayudarme.


Gracias de antemano .
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 dinamicas

Publicado por juancho (193 intervenciones) el 09/09/2008 12:55:39
No son necesarios los cubos se usan para otras cosas;
procedure Selec(Campo, Valor: String);
var
MiConsulta: TSQLQuery;
begin
MiConsulta = TSQLQuery.Create(nil)
with Miconsulta do
begin
SQL.Add(Format('SELECT * FROM TABLA WHERE %s = %s', [Campo, VAlor]))
Execute;
end;
MiConsulta.Free;
end;
Algo por estilo puedes hacer, claro que depende de que valor introduces y demas tienes que cambiarlo un poquito, pero eso te dara una idea.
Si vas a hacer una consulta muy generica, tienes que usar tu imaginacion, ir viendo mas o menos con ese ejemplo y ajustar a lo que buscas.
Cualquier cosa avisas, suerte.
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