XCode4 - wo kann man für sqlite-Datei, die erstellt wird von core data
Ich habe gerade angefangen mit core data. Ich möchte das setup eine pre-besiedelten db. Ich habe irgendwo gelesen, dass core data erstellt eine sqlite-Datei, wenn ein Kern Daten-app ausgeführt wird. Ich weiß nicht, wo suchen, wenn für Sie.
Folgte ich den Anweisungen auf dieser blog aber nicht zu finden, die die sqlite-Datei über den Speicherort angegebene Verzeichnis /Users/<Username>/Library/Application Support/iPhone Simulator/User/Application/<Application GUID>/Documents/<database name.sqlite>
noch in dem Verzeichnis der Anwendung.
hier ist mein code für 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;
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Dateien sind in
~/Library/Application Support/iPhone Simulator/[SDK version]/Applications/[App GUID]/Documents
für mich, sowohl für Xcode 3 und Xcode 4.Wenn Sie mehrere SDKs, stellen Sie sicher, dass sich die verschiedenen SDK-version, die Verzeichnisse für Ihre app.
Für mich war es in whatMuregSaid/[Applikations-Guid]/Library/Application Support/[AppName]/Dateiname.sqlite
Gehen Sie folgendermaßen vor:
In Ihrem
applicationDocumentsDirectory
Funktion in AppDelegate.swift fügen Sie diesen code: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)")
Suchen Sie diese in der Konsole, dies wird drucken Sie die Lage der sqlite-Datenbank, öffnen Sie Ihr terminal und
open whatever_the_location_path_was
Download SQLite viewer http://sqlitebrowser.org/
Rechten Maustaste auf das yourapp.sqlite-Datei in den Ordner, wählen Sie " Öffnen Mit sqlitebrowser, die Sie heruntergeladen haben
Prost!
hoffe, dies wird Ihnen helfen, etwas mehr
/Benutzer/Benutzername/und drücken Sie dann cmd+shift+G und schreiben /Benutzer/Benutzername/Bibliothek, Sie sehen Nun die Library-Ordner nach, es geht um Application Support/iPhone Simulator/7.1(oder 7.1-64)/Applications/F84D4CC8-326E-4A2E-8A37-F1A755D6FCC4/Dokumente
Sie werden sehen, drei Datei und einer .sqlite-Datei.
Zu sehen, Struktur und andere Informationen der sqlite-Datei , die effizienteste Möglichkeit ist die Verwendung von SQLITE-MANAGER(add-on von firefox https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/) hinzufügen und klicken Sie dann auf TOOLS .