Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Mysql con delphi 2010 consulta tabla (https://www.clubdelphi.com/foros/showthread.php?t=70070)

gdlrinfo 28-09-2010 18:28:05

Mysql con delphi 2010 consulta tabla
 
Hola amigos tengo una base de datos que se llama consultorio y una tabla que se llama medico estoy usando un sqlquery para ver los datos tambien tengo un dbgrid mi pregunta es como puedo filtrar los nombres del campo nombre es decir si yo pongo juan en el edit quiero que me muestre en el dbgrid solo los juan he probado asi y no hace nada... desde ya muchas gracias

[DELPHISQL
Query1.close;
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Text:='SELECT * FROM medico WHERE '+Combobox1.Text+' LIKE ''%'+Edit5.Text+'%''';
SQLQuery1.ExecSQL(true);
SQLQuery1.Open;
][/delphi]

olbeup 28-09-2010 20:39:02

Cita:

Query1.close;
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Text:='SELECT * FROM medico WHERE '+Combobox1.Text+' LIKE ''%'+Edit5.Text+'%''';
SQLQuery1.ExecSQL(true);
SQLQuery1.Open;
En éste código te sobra el SQLQuery1.ExecSQL(true), solo deja el SQLQuery1.Open, como así:
Código Delphi [-]
with SQLQuery1 do
begin
  if Active then Close;
  SQL.Clear;
  SQL.Add('SELECT *');
  SQL.Add('  FROM Medico');
  SQL.Add('  WHERE ' + ComboBox1.Text + ' LIKE ' + QuotedStr('%' + Edit5.Text + '%'));
  Open;
end;
Un saludo.

gdlrinfo 29-09-2010 00:31:45

Gracias
 
Hola amigos he probado el codigo pero cuando le doy al boton no hace nada no quedan solo los registros con el nombre que pongo en el edit pongo el codigo por las dudas desde ya muchas gracias

Código Delphi [-]
procedure TFmedico.Button3Click(Sender: TObject);
begin
with SQLQuery1 do
begin
  if Active then Close;
  SQL.Clear;
  SQL.Add('SELECT *');
  SQL.Add('FROM Medico');
  SQL.Add('WHERE ' + ComboBox1.Text + ' LIKE ' + QuotedStr('%' + Edit5.Text + '%'));
   dbgrid1.Refresh;
  Open;
end;
En el combobox por ejemplo pongo el nombre (nombre del campo solo tengo nombre y apellido para buscar) despues en el edit pongo juan que es uno de los datos de mi tabla pero no hace nada :S la verdad ya nose que puede ser espero puedan darme una mano ! gracias

Pensa2r 29-09-2010 00:57:49

Hola yo vuelvo a cargar el dataset del DBGrid y ya se actualiza.
Código:

procedure TFmedico.Button3Click(Sender: TObject);
 begin
  with SQLQuery1 do begin
  if Active then Close;
  SQL.Clear;
  SQL.Add('SELECT *');
  SQL.Add('FROM Medico');
  SQL.Add('WHERE ' + ComboBox1.Text + ' LIKE ' + QuotedStr('%' + Edit5.Text + '%'));
  Open;
--->> DBGrid1.DataSource:= SQLQuery1;
  end;


gdlrinfo 29-09-2010 01:00:11

Gracias
 
Si eso del refresh lo puse por las dudas me olvide de sacarlo pero asi como me decis tampoco me anda :S no me busca el registro que quiero :S la verdad nose quiza estoy haciendo algo mal pero nose que es ???? :S

Pensa2r 29-09-2010 01:11:16

Pero el DBGrid te carga todos los registros del Query?
tu problema cual es que no te hace la consulta?
verifica el valor que tienes en el combobox

Pensa2r 29-09-2010 01:15:39

escribe la linea directamente
Código:

SQL.Add('WHERE '+'CAMPO'+' LIKE ' +'LO QUE BUSCO');


La franja horaria es GMT +2. Ahora son las 21:27:37.

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