Ver Mensaje Individual
  #1  
Antiguo 12-06-2014
MLROJO MLROJO is offline
Miembro
 
Registrado: jul 2004
Ubicación: Granada
Posts: 26
Reputación: 0
MLROJO Va por buen camino
Filtrar resultados de una tabla con un campo tipo TEXT SQLite

Hola,

Tengo una base de datos SQLite y accedo a ella con TFDConnection, TFDQuery, TDataSource.

Una de las tablas contiene un campo de tipo TEXT, cuando intento realizar una búsqueda sobre este campo no devuelve resultados.

Según he podido leer por ahí, es una limitación de este campo ¿es así?. Si pruebo con otro campo de la tabla de tipo varchar, por ejemplo, funciona correctamente.

¿Alguien se ha encontrado con el problema?

Mi código:

Código Delphi [-]
    if Edit1.Text <> '' then
    begin
      DataModule2.qCodigosVersiones.Active := false;
      DataModule2.qCodigosVersiones.SQL.Clear;
      DataModule2.qCodigosVersiones.SQL.Add('select * from codigosVersiones where texto = : p1');
      DataModule2.qCodigosVersiones.Params[0].AsWideMemo :=  Edit1.Text;
      DataModule2.qCodigosVersiones.Active := true;
      end
      else
      begin
      DataModule2.qCodigosVersiones.Active := false;
      DataModule2.qCodigosVersiones.SQL.Clear;
      DataModule2.qCodigosVersiones.SQL.Add('select * from codigosVersiones');
      DataModule2.qCodigosVersiones.Active := true;
    end;

Otro código que he probado:

Código Delphi [-]
    if Edit1.Text <> '' then
    begin
      DataModule2.qCodigosVersiones.Active := false;
      DataModule2.qBusqueda.Filter := ' texto like ''%' + Edit1.Text + '%''';
      DataModule2.qBusqueda.Filtered := true;
      DataModule2.qCodigosVersiones.Active := true;
      end
      else
      begin
      DataModule2.qCodigosVersiones.Active := false;
      DataModule2.qCodigosVersiones.SQL.Clear;
      DataModule2.qCodigosVersiones.SQL.Add('select * from codigosVersiones');
      DataModule2.qCodigosVersiones.Active := true;
    end;

Gracias,

Saludos.
Responder Con Cita