Ver Mensaje Individual
  #1  
Antiguo 25-02-2026
GINMARMENOR GINMARMENOR is offline
Miembro
 
Registrado: feb 2016
Posts: 79
Reputación: 11
GINMARMENOR Va por buen camino
Grabacion de Registros en una tabla.

Muy buenas, Estoy Trabajando con Delphi 2.010 y uso Firibird 2.5 las bases de datos las he creado con IbExpert, y de momento llevo creando el programa varios años, y todo funciona bien, dentro del programa tengo un total de unas 50 Tablas (IbTables) con sus TDataSources correspondientes, las Tablas más importantes que más utilizo que es la IbTablaPedidos, dispone de 85 campos en los cuales trabajo a una velocidad normal tarda 2 a 3 segundos en guardar un pedido, aunque aparentemente es lento pero se puede trabajar bien, siempre utilizo este Sintaxis para grabar los pedidos:

Código:
 
                IbTablePedidos.Insert
                IbTablaPedidosID.Asinteger:=StrtoInt(edit1.text);
                IbTablaPedidosCodigo.AsInteger:=Strtoint(edit2.text);
                   .
                   .
                   .
                IbTablaPedidosCantidad:AsInteger:=StrtoInt(Edit20.text);
             
                IbTablePedidos.post;
Introduzco de una tirada unos 15 ó 20 Campos de una tirada.

Pero acabo de crear una nueva Tabla que tiene 140 campos, pero de una tirada grabo unos 25 campos, el resto de campos los voy introduciendo en otros procesos, pero resulta que ahora en vez de 2 ó 3 segundos en grabar tarda de 30 segundos más o menos, utilizando un código similar.

No sé si es debido a tener tantos campos en la tabla, o es el código, si me pueden echar una mano,

La tabla anterior tiene dentro unos 2.000 registros, y funciona con ese desfase de 2 ´o 3 segundos

Ésta nueva tabla al ser creada hace poco dispone de unos 40 registros pero siempre en cada grabación tarda unos 30 segundos.

Si me pueden echar una mano para ver el por qué o si debo cambiar el código se lo agradecería
Responder Con Cita