我是iPhone开发的新手,尽管我花了好几个小时寻找正确的答案,但最后却让我更加困惑。 这是我的问题 - 我正在创建一个简单的iPhone应用程序,它有自己的数据库/只包含一个简单的表,并存储在我的项目文件夹中以及所有.m和.h文件/并使用托管核心数据呈现的对象模型。 我认为我按照应该完成的方式完成了所有工作,但我的程序以下列"未解决的错误错误Domain = NSCocoaErrorDomain Code = 256"操作无法完成。 (可可错误256。)
实际上这是整个输出:
2011-12-07 18:50:50.009 weatherForecast [5368:207] CoreData:错误:(1)I / O错误 数据库位于/ Users / eln / Library / Application Support / iPhone 模拟器/ 5.0 /应用/ 4991C3EB-BDC2-4507-B1FB-720F6DC30245 /文档/ weatherForecast.sqlite。 SQLite错误代码:1,'没有这样的表:Z_METADATA'
2011-12-07 18:50:50.012 weatherForecast [5368:207]未解决的错误 错误域= NSCocoaErrorDomain代码= 256"操作不能 完成。 (可可错误256。)"的UserInfo = 0x6a33e40 {NSUnderlyingException =数据库的I / O错误 /Users/toma.popov/Library/Application Support / iPhone 模拟器/ 5.0 /应用/ 4991C3EB-BDC2-4507-B1FB-720F6DC30245 /文档/ weatherForecast.sqlite。 SQLite错误代码:1,'没有这样的表:Z_METADATA', NSSQLiteErrorDomain = 1}, { NSSQLiteErrorDomain = 1; NSUnderlyingException =" / Users / eln / Library / Application Support / iPhone上数据库的I / O错误 模拟器/ 5.0 /应用/ 4991C3EB-BDC2-4507-B1FB-720F6DC30245 /文档/ weatherForecast.sqlite。 ** SQLite错误代码:1,'没有这样的表格:Z_METADATA'";
我的程序在此get方法中停止: **
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator
{
if (__persistentStoreCoordinator != nil)
{
return __persistentStoreCoordinator;
}
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"weatherForecast.sqlite"];
NSLog(@"DATABASE IS LOCATED AT: %@",(NSString *)[self applicationDocumentsDirectory]);
NSError *error = nil;
__persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error])
{
//right here my program aborts
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
**
如果有人给我建议或者至少建议问题是什么,我将非常感激。谢谢你提前!
答案 0 :(得分:1)
核心数据需要管理/创建自己的数据库,它不能使用您自己创建的数据库。 weatherForecast.sqlite
是这样的文件吗?