ios sqlite core-data insert bulk

ios - inserciones masivas con SQLite y CoreData



core-data insert (1)

Tengo un modelo CoreData que usa SQLite como tienda de persistencia. Necesito insertar un gran número de filas después de hacer algún procesamiento en cada registro. ¿Hay alguna forma de enviar esos comandos a SQLite

PRAGMA synchronous=OFF PRAGMA count_changes=OFF PRAGMA journal_mode=MEMORY PRAGMA temp_store=MEMORY

Necesito acelerar el tiempo de procesamiento, ya que toma un par de horas completarlo.

Cualquier sugerencia será apreciada.

Gracias


Puede especificar los pragmas al agregar su tienda al coordinador de la tienda:

NSMutableDictionary *pragmaOptions = [NSMutableDictionary dictionary]; [pragmaOptions setObject:@"OFF" forKey:@"synchronous"]; [pragmaOptions setObject:@"OFF" forKey:@"count_changes"]; [pragmaOptions setObject:@"MEMORY" forKey:@"journal_mode"]; [pragmaOptions setObject:@"MEMORY" forKey:@"temp_store"]; NSDictionary *storeOptions = [NSDictionary dictionaryWithObject:pragmaOptions forKey:NSSQLitePragmasOption]; NSPersistentStore *store; NSError *error = nil; store = [psc addPersistentStoreWithType:NSSQLiteStoreType configuration: nil URL:url options:storeOptions error:&error];

(Adaptado de las características persistentes de la tienda )

Recomiendo leer también "Importar datos de manera eficiente".

Documentación relacionada: NSSQLitePragmasOption Importación de datos de manera eficiente