2013-07-01 51 views
0

我正在用xcode 4.6.1创建一个ios应用程序,它使用核心数据将数据保存在数据库中,我已经提供了部署目标作为ios 4.3并且基本sdk被设置为最新的6.1。核心数据创建一个没有表格的sqlite文件

我卡住的地方是当我在ios 4.3上运行应用程序时,我看到我的sqlite文件已创建,但其中没有表格。我已经写在这里没有特殊的代码和每一件事情是在应用程序委托默认的照顾,我碰到几个帖子里其他开发商不得不

 
NSURL *modelURL =[[NSBundle mainBundle] URLForResource:@"StudentData" withExtension:@"momd"]; 
    _managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL]; 

使用“妈妈说:”上面,但我甚至认为,它似乎每次在ios 4.3这个问题弹出,我也尝试和重置我的模拟器很多时间,但似乎没有任何工作,我需要ios4.3支持,所以请让我知道这里发生了什么,我是什么需要做。

我也尝试打印

 
NSLog(@"%@",[self managedObjectModel]);

,但它不是零

请注意他们是在这里的文件名没有错。

由于

回答

0

嗯,我得到了这个工作我所做的是运行应用程序,看到它创建了sqlite文件,但没有表,但当我试图插入数据与数据库与ios 4.3,然后数据插入和表被创造出奇怪的是它对我没有任何意义,但我没有改变代码中的任何东西而得到了这个工作。

0

一个NSBundle * modelWrapper = [一个NSBundle bundleWithPath:[[一个NSBundle mainBundle] pathForResource:@ “StudentData” ofType:@ “momd”]]; NSString * modelPath = [modelWrapper pathForResource:@“StudentData”ofType:@“mom”];

managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:[NSURL fileURLWithPath:modelPath]];

0

默认情况下,在Mac OS中,您没有写入权限。

从终端转到您存储StudentData文件的路径,然后写入该命令chmod 777

它可以让你在文件中写入数据。