Ver Mensaje Individual
  #1  
Antiguo 27-08-2007
intelectoall intelectoall is offline
Registrado
 
Registrado: ago 2007
Posts: 2
Reputación: 0
intelectoall Va por buen camino
Cool Como hacer un bulk insert con dbExpress.

Estoy desarrollando una aplicación que trabaja con una base de datos interbase en red.

En una de las pantallas, despues del usuário definir algunas opciones tengo que crear unos 5000 registros en várias tablas.

Estoy usando ClientDataSet, DataSetProvider y TMidasDataSet para ejecutar todos los inserts. Tengo unos 5 o 6 DataSets de detalles y voy ańadindo todos los registros y luego, al final, le doy un ApplyUpdates en el ClientDataSet master.

El problema es que el proceso tarda unos 5 minutos si estoy en un terminal que no sea donde esta instalado el Interbase... y más o menos 1 minuto si estoy en el servidor (donde está el Interbase).

Busco una forma de hacer con que este proceso sea más rápido.

Con el ADO lo que hacia es usando el ADOCommand, crear una lista de INSERTS:

INSERT INTO XXX () VALUES ()
INSERT INTO XXX () VALUES ()
INSERT INTO XXX () VALUES ()
INSERT INTO XXX () VALUES ()
INSERT INTO XXX () VALUES ()
INSERT INTO XXX () VALUES ()

y luego ejecutar todo de una sola vez en el servidor, pero en el dbExpress no he encuentrado nada parecido.

Alguém me puede ayudar?
Responder Con Cita