2011-06-28 4 views
7

Acabo de empezar a usar los datos centrales. Quiero configurar un db pre-poblado. Leí en alguna parte que los datos centrales crean un archivo sqlite cuando se ejecuta una aplicación de datos básicos. Aunque no sé dónde buscarlo.XCode4: dónde buscar el archivo sqlite creado por los datos centrales

Seguí las instrucciones en este blog pero no encontré el archivo sqlite sobre la ubicación especificada en el directorio /Users/<Username>/Library/Application Support/iPhone Simulator/User/Application/<Application GUID>/Documents/<database name.sqlite> ni en el directorio de la aplicación.

aquí está mi código para persistentCoordinator.

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator 
{ 
    if (__persistentStoreCoordinator != nil) 
    { 
     return __persistentStoreCoordinator; 
    } 

    NSString *storePath = [[[self applicationDocumentsDirectory] path] stringByAppendingPathComponent:@"coredata.sqlite"]; 
    NSFileManager *fileManager = [NSFileManager defaultManager]; 
    if (![fileManager fileExistsAtPath:storePath]) { 
     NSString *defaultStorePath = [[NSBundle mainBundle] pathForResource:@"coredata" ofType:@"sqlite"]; 
     if (defaultStorePath) { 
      [fileManager copyItemAtPath:defaultStorePath toPath:storePath error:NULL]; 
     } 
    } 

    NSURL *storeURL = [NSURL fileURLWithPath:storePath]; 
    NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption, [NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption, nil]; 

    NSError *error = nil; 
    __persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]]; 
    if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) 
    { 
     NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
     abort(); 
    }  

    return __persistentStoreCoordinator; 
} 

Respuesta

16

Esos archivos están en ~/Library/Application Support/iPhone Simulator/[SDK version]/Applications/[App GUID]/Documents para mí, tanto para Xcode Xcode 3 y 4.

Si tiene varios SDK, asegúrese de buscar en todos los diferentes directorios de versión SDK para su aplicación.

+0

¿Cómo se conoce el ** GUID de la aplicación **? –

1

para mí fue en whatMuregSaid/[GUID de aplicación]/Library/Application Support/[AppName] /filename.sqlite

0

esperanza esto le ayudará a poco más

  1. /Users/nombre de usuario/Luego presione cmd + shift + G y escriba/Users/Username/Library, ahora verá la carpeta Library después de ir a Application Support/iPhone Simulator/7.1 (o 7.1-64)/Applications/F84D4CC8-326E-4A2E-8A37 -F1A755D6FCC4/Documents verá tres archivos y uno es .sqlite.

  2. Para ver la estructura y otra información de este archivo sqlite, la forma más eficiente es usar el ADMINISTRADOR DE SQLITE (complemento de firefox https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/) agréguelo y luego haga clic en HERRAMIENTA.

1

siga estos pasos:

  1. En su función applicationDocumentsDirectory en AppDelegate.swift añadir este código:

    let urls = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)

    // Look for this in the console, this will print out the location of the sqlite database, which you can then open with an SQLite viewer

    print("urls.last \(urls.last)")

  2. Look para esto en la consola, esto mostrara la ubicación de la base de datos SQLite, abra el terminal y open whatever_the_location_path_was

  3. espectador Descargar SQLite http://sqlitebrowser.org/

  4. Haga clic derecho en el archivo en el yourapp.sqlite carpeta, elija Abrir con sqlitebrowser que descargó

¡Salud!

Cuestiones relacionadas