tipos segun onu noticias migracion mexico inmigrantes consecuencias causas iphone core-data migration indexing mapping-model

iphone - segun - Agregue el índice de datos básicos a ciertos atributos a través de la migración



noticias de migracion en mexico 2018 (2)

¿Qué estrategia de migración usaste?

En XCode puede generar un modelo de mapeo y ver los cambios que ocurrirán, incluida la indexación.

Sugiero simplemente agregar el modelo de mapeo, verificar que los cambios en el índice estén especificados, y hacer la migración liviana automática:

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption, [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption,nil]; NSPersistentStore *migratedStore = [persistentStoreCoordinator addPersistentStoreWithType:nil configuration:nil URL:storeURL options:options error:&error]; migrationWasSuccessful = (migratedStore != nil);

El coordinador de la tienda persistente detectará automáticamente el modelo de asignación y lo usará para realizar la migración. Parece que el modelo inferido en tiempo de ejecución no es sensible a la aplicación de índices a las propiedades de la entidad.

Por razones de rendimiento, quiero configurar el atributo indexado a algunas de mis entidades. Creé una nueva versión del modelo de datos básicos para realizar los cambios. Core Data detecta los cambios y migra mi modelo a la nueva versión, sin embargo, NO SE GENERAN NINGÚN ÍNDICE .

Si recreo la base de datos desde cero, los índices están ahí. Lo comprobé con el navegador SQLite tanto en el iPhone como en el simulador. El problema solo ocurre si una base de datos en el formato anterior ya está allí.

¿Hay alguna manera de agregar manualmente los índices? Escribir algunos sql para eso? ¿O me estoy perdiendo algo? Ya hice algunas migraciones más críticas, no hay problemas allí. Pero esos índices faltantes me están molestando.

¡Gracias por ayudar!


Yo tuve el mismo problema.

De acuerdo con la Guía de programación de versiones de datos y migración de datos del modelo de datos básicos :

La perspectiva de Core Data sobre el control de versiones es que solo le interesan las características del modelo que afectan la persistencia.

Simplemente agregar un índice a una propiedad de modelo existente no desencadena automáticamente una migración ya que los Datos principales no ven los dos esquemas de modelo como diferentes (un índice no afecta la persistencia).

Sin embargo, puede hacer que Core Data vea su modelo como cambiado al agregar un Modificador de Versión Hash a su atributo recién indexado. Esto activó una migración ligera para actualizar mis bases de datos existentes.