Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-02-2011
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 21
ramonibk Va por buen camino
Leer Memos recorriendo tabla

Buenas a todos.

Estoy intentando recorrer una base de datos (Una Tabla) y mientras la recorro intento revisar un campo Memo buscando Frases especificas.

lo he intentado de la siguiente manera

Código Delphi [-]
Var
N, I : Integer;
S : String;

Begin
 I := 0;
 S := qryBuscarCampoMemo.AsString;
 For N := 0 To qryBuscar.qryBuscar.RecordCount Do
 Begin
  if AnsiContainsText( S, 'Frase a Buscar' )= True Then
     Begin
       I := I+1;
       Label1.Caption:=IntToStr(I); // Solo para poder ver el contador
     End;
   dsBuscar.DataSet.Next; 
 End;

End;
Y bueno no se lo que pasa pero no consigo que esto ande.
Responder Con Cita
  #2  
Antiguo 21-02-2011
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow Y el error??

Pues no estás diciendo que problema exactamente tienes?
Por lo que puedo ver es que tu variable "S" nunca cambia, es decir le asignas lo que tiene "qryBuscarCampoMemo.AsString" sólo una vez, pero nunca cambia de valor...
Supongo que lo que tratas de hacer es que en cada registro recorrido la variable "S" se actualize con lo que tiene el campo "qryBuscarCampoMemo", si és así, pues entonces debes hacer la asignación dentro del ciclo..
Código Delphi [-]
...
 Begin
 I := 0;
 qryBuscar.qryBuscar.First;//por si las moscas 
 For N := 0 To qryBuscar.qryBuscar.RecordCount Do
 Begin
 S := qryBuscarCampoMemo.AsString;//asigno a mi variable S dentro del ciclo para que se actualize
  if AnsiContainsText( S, 'Frase a Buscar' )= True Then
     Begin
       I := I+1;
       Label1.Caption:=IntToStr(I); // Solo para poder ver el contador
     End;
   dsBuscar.DataSet.Next; 
 End;
 ...
De todas formas quizás exista una mejor y más eficiente forma de hacer lo que pretender lograr, claro está que para poder guiarte en es caso, debes dar más detalle de lo que necesitas hacer exactamente...
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #3  
Antiguo 21-02-2011
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 21
ramonibk Va por buen camino
Efectivamente ese era el problema.
al no refrescar la variable "S" esto no se movía.

El tema es ir recorriendo la table para buscar en partes de trabajo y poder generar estadísticas.
Responder Con Cita
  #4  
Antiguo 21-02-2011
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por ramonibk Ver Mensaje
..
El tema es ir recorriendo la table para buscar en partes de trabajo y poder generar estadísticas.
Y por que no hacer una Consulta SQL con alguna sentencia LIKE (por ejemplo) hacia el Server directamente para que te haga eso???
Es mucho más rápido y eficiente que estas recorriendo el DataSet(Query,Table).
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
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
while anidado para leer una tabla gri Tablas planas 18 23-01-2011 22:58:07
Leer un TXT e insertar en tabla de firebird ivantech Firebird e Interbase 13 01-09-2010 21:44:09
Insertar en tabla dbgrid recorriendo filas y columnas una a una Moparova Conexión con bases de datos 1 23-05-2008 14:52:16
Triggers - Recorriendo los campos Sick boy Firebird e Interbase 1 06-06-2006 09:55:43


La franja horaria es GMT +2. Ahora son las 17:20:35.


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
Copyright 1996-2007 Club Delphi