Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-09-2024
marco3k marco3k is offline
Miembro
 
Registrado: feb 2015
Posts: 94
Poder: 11
marco3k Va por buen camino
Ya vi tu problema, es el query que lo liberas y al hacerlo se pierden los registros, trata de hacerlo como una variable de formulario.
Responder Con Cita
  #2  
Antiguo 26-09-2024
lugotrujillo lugotrujillo is offline
Registrado
 
Registrado: sep 2024
Posts: 7
Poder: 0
lugotrujillo Va por buen camino
Cita:
Empezado por marco3k Ver Mensaje
Ya vi tu problema, es el query que lo liberas y al hacerlo se pierden los registros, trata de hacerlo como una variable de formulario.
no que va, traceo el programa para ir evaluando el comportamiento y en esta comprobacion es que me doy cuenta

if not QLista.IsEmpty //=>la lista esta vacia, no se obtuvieron registros, cambio la consulta de seleccion eliminando el LIKE y me devuelve registros, verifico la consulta con el LIKE en access y esta bien, devuelve los registros que son segun sea la condicion LIKE

antes el LIKE funcionaba, ahora no, algo mas paso y no me di cuenta
Responder Con Cita
  #3  
Antiguo 26-09-2024
marco3k marco3k is offline
Miembro
 
Registrado: feb 2015
Posts: 94
Poder: 11
marco3k Va por buen camino
Hice un pequeño ejemplo con una bd de access y el problema es el * y debes usar %
Código Delphi [-]
procedure TForm1.btnBuscaClick(Sender: TObject);
var busca :string;
begin
  try
    try
      busca:= '%'+trim(self.edtBusca.Text)+'%';
      self.Conexion.Connected:= true;
      self.DataSetPrueba.CommandText :='select * from prueba where nombre like :busca';
      self.DataSetPrueba.Parameters.ParamByName('busca').Value := busca;
      self.DataSetPrueba.Active:= true;
      if self.DataSetPrueba.RecordCount>0 then
      begin
        showmessage('Se encontró ' + inttostr(self.DataSetPrueba.RecordCount) + ' registro(s)');
      end;
    except
      abort;
    end;
  finally
    self.Conexion.Connected:= false;
  end;
end;


Use access 2013 proveedor "Provider=Microsoft.ACE.OLEDB.12.0" y una tabla con campo texto nombre. Funciona lo de arriba.

Última edición por marco3k fecha: 26-09-2024 a las 23:15:51.
Responder Con Cita
  #4  
Antiguo 27-09-2024
lugotrujillo lugotrujillo is offline
Registrado
 
Registrado: sep 2024
Posts: 7
Poder: 0
lugotrujillo Va por buen camino
Cita:
Empezado por marco3k Ver Mensaje
Hice un pequeño ejemplo con una bd de access y el problema es el * y debes usar %
Código Delphi [-]procedure TForm1.btnBuscaClick(Sender: TObject); var busca :string; begin try try busca:= '%'+trim(self.edtBusca.Text)+'%'; self.Conexion.Connected:= true; self.DataSetPrueba.CommandText :='select * from prueba where nombre like :busca'; self.DataSetPrueba.Parameters.ParamByName('busca').Value := busca; self.DataSetPrueba.Active:= true; if self.DataSetPrueba.RecordCount>0 then begin showmessage('Se encontró ' + inttostr(self.DataSetPrueba.RecordCount) + ' registro(s)'); end; except abort; end; finally self.Conexion.Connected:= false; end; end;



Use access 2013 proveedor "Provider=Microsoft.ACE.OLEDB.12.0" y una tabla con campo texto nombre. Funciona lo de arriba.

voy a probar a ver, no recuerdo si usaba % anteriormente en los LIKE o siempre use *, incluso cambie el proveedor entre ese q usaste y "Provider=Microsoft.Jet.OLEDB.4.0" y obtenia el mismo resultado
Responder Con Cita
  #5  
Antiguo 27-09-2024
lugotrujillo lugotrujillo is offline
Registrado
 
Registrado: sep 2024
Posts: 7
Poder: 0
lugotrujillo Va por buen camino
gracias marcos3k, era eso, el %, vaya q clase de pifia, es q hacia tiempo no retocaba esos programas
Responder Con Cita
Respuesta



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
consulta en un ADOQUERY the walrus Tablas planas 21 17-09-2018 12:02:02
Consulta ADOQuery barakuda SQL 7 10-04-2014 03:35:48
Consulta SQL en ADOQuery epenor Conexión con bases de datos 7 29-09-2008 04:16:27
consulta adoquery Yensis22 SQL 1 15-06-2008 21:09:03
consulta con un adoQuery manu Conexión con bases de datos 4 29-09-2006 00:17:48


La franja horaria es GMT +2. Ahora son las 11:47:58.


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