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 09-03-2007
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 254
Poder: 18
vroa74 Va por buen camino
Question problemas con filtro

Tengo problemas con los filtros pues los estoy usando constantemente.
en ciclos y la verdad no me da los resultados que yo espero.

Código Delphi [-]
var
    i,j:integer;
      x1,x2,x3,x4:integer;
      fe1,fe2:integer;
      Sfecha:string;
      Dfecha:Tdate;
begin
      i:=0;                 x1:=0;
      x2:=0;                x3:=0;
      x4:=0;                j:=0;
      fe1:=0;               fe2:=0;
    j:=Random(10);
    fe1:=Random(31);
    fe2:=Random(3);
    Sfecha:=IntToStr(fe1)+'/'+IntToStr(fe2)+'/'+'2007';
   Label12.Caption:=IntToStr(j);
for i:= 1 to j do
  begin
  //========================================================
  //   Llennado de la base de datos
  //========================================================
     fe1:=Random(30);
     fe2:=Random(3);
     if(fe1 = 0) then
      fe1:=1;
     if(fe2 = 0) then
      fe2:=1;
     if((fe2 = 2)and(fe1>=28)) then
      begin
      fe1:=1;
      fe2:=3;
      end;
     Sfecha:=IntToStr(fe1)+'/'+IntToStr(fe2)+'/'+'2007';
     Dfecha:=StrToDate(Sfecha);
     DateTimePicker1.Date:=Dfecha;//////////////////////////////////////////////
     can1:= Random(2147483647);
     can2:= Random(2147483647);
     can3:= Random(2147483647);/////////////////////////////////////////////////
     x1:= Random(24);
     x2:= Random(24);
     x3:= Random(24);
     x4:= Random(24);///////////////////////////////////////////////////////////
     ComboBox1.Text:=nombress[x1];
     ComboBox2.Text:=apellidos[x2];
     ComboBox3.Text:=apellidos[x3];
     ComboBox4.Text:=ciudadd[Random(24)];
     ComboBox5.Text:=ciudadd[x4];///////////////////////////////////////////////
     Edit6.Text:=IntToStr(can1);
     Edit7.Text:=IntToStr(can2);
     Edit8.Text:=IntToStr(can3);
//----------------------------------------------------------------------
    ComboBox1.Text := strupper(Pchar(ComboBox1.Text));
    ComboBox2.Text := strupper(Pchar(ComboBox2.Text));
    ComboBox3.Text := strupper(Pchar(ComboBox3.Text));
    ComboBox4.Text := strupper(Pchar(ComboBox4.Text));
    ComboBox5.Text := strupper(Pchar(ComboBox5.Text));
    Edit6.Text := strupper(Pchar(Edit6.Text));
    Edit7.Text := strupper(Pchar(Edit7.Text));
    Edit8.Text := strupper(Pchar(Edit8.Text));
    Memo1.Text := strupper(Pchar(Memo1.Text));
    Form1.Table1.Insert;
    Form1.table1.fieldbyname('Nombre').asstring := ComboBox1.Text;
    Form1.table1.fieldbyname('Apellidop').asstring := ComboBox2.Text;
    Form1.table1.fieldbyname('Apellidom').asstring := ComboBox3.Text;
    Form1.table1.fieldbyname('Domicilio').asstring := ComboBox4.Text;
    Form1.table1.fieldbyname('Entidad').asstring := ComboBox5.Text;
    Form1.table1.fieldbyname('Ife').asstring := Edit6.Text;
    Form1.table1.fieldbyname('Referencia').asstring := Edit7.Text;
    Form1.table1.fieldbyname('Concepto').asstring := Memo1.Text;
    Form1.table1.fieldbyname('Fecha').AsDateTime := Dfecha;//DateTimePicker1.Date;
    Form1.table1.fieldbyname('Monto').asstring := Edit8.Text;
    Form1.Table1.Post; {guardar cambios}
    Label11.Caption:=IntToStr(i);
    Application.ProcessMessages;
//----------------------------------------------------------------------
  end;// fin del ciclo for

end;

lo probe con una tabla duplique la tabla y a la tbla dos le agregue 5 campos que no fueran posibles que estuvieran en la tabla 1 y cuando terminaba, me decia que tenia 10 registros insertados.

de una tabla de 10 registros repetidos y 5 registro nuevos de la tabla dos, asi que a lo mucho deberia tener 5 registro y pareciere tenia un 33%.

//Lo Edite para agregar las etiquetas Delphi
//Nota: Por favor usenlas...

Última edición por vroa74 fecha: 10-03-2007 a las 04:41:31.
Responder Con Cita
  #2  
Antiguo 09-03-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Mas que ayudarte quisiera darte un consejo.

En lugar de usar filtros en los datasets usa Querys, por que es muchisimo más costoso para la aplicación utilizar filtros que ejecutar una consulta.


suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 09-03-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Te doy la razon poliburro, lo que pasa es que aveces se puede complicar sobre todo para los aprendices como yo, cuando se trata de varias tablas.
Pero de que tienes razon la tienes, es mucho mas eficiente con sql.
Saludos
Responder Con Cita
  #4  
Antiguo 09-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Código Delphi [-]
    Label21.Caption := IntToStr(con4);
    Application.ProcessMessages;
    Form1.Table2.Next;

Sustituye el Application.ProcessMessages por label21.Update. No estoy seguro de que funcione, porque los mensajes de dibujado tienen poca prioridad, pero el processmessages consume mucho tiempo en un bucle.

Edito:
Además incluye un table1.DisableControls antes del bucle y un Table1.EnableControls al final del bucle, eso disminuye el tiempo del bucle 10 veces. Lo mismo para table2.

Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 09-03-2007 a las 20:14:21.
Responder Con Cita
  #5  
Antiguo 10-03-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Y Dónde está el código del primer mensaje? Por qué lo quitaste?vroa74

Saludos
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #6  
Antiguo 10-03-2007
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 254
Poder: 18
vroa74 Va por buen camino
No conosco el Leguaje delphi, sus sustilezas.
Como ven tengo muchas dudas y pregunto mucho antes de preguntar busco unformacion con las preguntas anteriores y si no me queda claro pregunto.

Ahora.

solo conosco como se usan los componentes TTable con TDataSource me gustaria saber como implementar los Querys asi como la relacion de los componentes, su sintanxis.

Estoy biendo unos ejemplos mas no me es muy clara la idea. (por el momento uso bases de datos locales no se si seguir usando db o iniciar a buscar la forma de usa dbf o gdb en forma local)
porque no tengo la nocion de como usarla no se su es:

TTable -->> TDatasource -->> TQuery

Estoy buscando informacion al respecto de los query's y tambien como implementas bases de datos .dbf y deja de usa *.db pues lei que son un poco inestables y sulelen generar problemas con muchos registros.

De antemano le doy las gracias por Toda su ayuda.

Última edición por vroa74 fecha: 10-03-2007 a las 05:03:19.
Responder Con Cita
  #7  
Antiguo 10-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
En La Cara oculta de delphi 4 (descarga gratuita) puedes ver todos esos detalles

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 12-03-2007
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 254
Poder: 18
vroa74 Va por buen camino
Question

Hola:
muchas gracias he estado leyendo La Cara Oculta de Delphi, Mas sin embargo siento que en mi caso no me da la informacion rapida, necesito leer mucho para poder entender como usar los componentes para pode usar sentencias sql en una base de datos locales sin usar el interbase server. estoy usando tablas paradox 7

Si alguien sabe donde encontrar la informacion mas depurada o un ejemplo se los agradeceria.

en este momento estoy leyendo y practicando

EXCEPCIONES, TIPOS DE DATOS DE DELPHI, yTÉCNICAS DE GESTIÓN DE VENTANAS

Como les mencione el libro es muy bueno lastima que no he conseguido la version 6 solo la 4.
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
problemas con un filtro merlin Conexión con bases de datos 0 10-01-2005 12:26:05
Problemas con filtro dinámico Walterdf Conexión con bases de datos 5 08-07-2004 17:06:31
problemas con un filtro merlin Varios 2 17-02-2004 13:59:09
Problemas con un try + un filtro merlin Varios 1 26-01-2004 19:03:25
Problemas con filtro... (y otros) sitrico Conexión con bases de datos 1 21-01-2004 21:52:12


La franja horaria es GMT +2. Ahora son las 12:55:41.


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