Ver Mensaje Individual
  #3  
Antiguo 19-01-2012
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Reputación: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Cita:
Empezado por fide_uci Ver Mensaje
Por lo que estuve mirando SQLite es rapido cuando se agrupan las inserciones o sea que yo deberia hacer una consulta INSERT y agregar todos los valores pero tengo miedo pasarme y explotar la memoria de la PC.
Sqlite, al igual que la mayoría de las BD, opera en batch de forma mas eficiente si se agrupa en una transaccion:

http://www.sqlite.org/faq.html#q19


Y en el caso de sqlite, es crucial hacer las operaciones CRUD que afecten muchos registros - exceptuando SELECT - en una transacción, ya que esta BD bloquea TODO EL ARCHIVO cuando se actualiza (otros motores bloquean solo la pagina, la tabla o el registro).


Y quitar Application.ProcessMessages no afectara el desempeño de forma importante, mientras evitara que parezca "muerta" la app.

Sin embargo, de ser una insercion realmente inmensa, es mejor usar un proceso asincronico o meterlo dentro de un thread separado (debes tomar en cuenta las limitaciones y configuraciones para acceder multi-thread sqlite http://www.sqlite.org/threadsafe.html)
__________________
El malabarista.
Responder Con Cita