如何解决运行时错误'无法创建带有消息的可写数据库文件'无法完成操作。 (可可错误260.)'。'?

时间:2012-06-21 08:50:22

标签: objective-c

我是iPhone的初学者我创建了数据库,但是给出了运行时错误,无法创建可写数据库文件,并显示消息'操作无法完成

我的代码是

-(void)createdatabase
{
    NSFileManager *fileManager=[NSFileManager defaultManager];
    NSError *error;
    NSString *dbPath=[self getDBPath];
    BOOL success=[fileManager fileExistsAtPath:dbPath];
    if(!success)
    {
        NSString *defaultDBPath=[[[NSBundle mainBundle]resourcePath] stringByAppendingPathComponent:@"SQL.sqlite"];
        success=[fileManager copyItemAtPath:defaultDBPath toPath:dbPath error:&error];
        if(!success)
        {
                NSAssert1(0, @"Failed to create writable database file with message '%@'.", [error localizedDescription]);  
        }

    }
}

提供适用于我的代码的任何建议和源代码

3 个答案:

答案 0 :(得分:1)

我为此错误代码做了一点谷歌,我发现

NSFileReadNoSuchFileError = 260,                        // Read error (no such file)

因此,请确保您在上述代码段中引用的路径中存在数据库文件(SQL.sqlite)。

答案 1 :(得分:1)

试试这个: 从模拟器的应用程序文件夹中删除应用程序,然后再次运行应用程序。我刚刚完成了这项小工作,我的错误就开始了......祝你好运..

答案 2 :(得分:1)

如果Shah Paneri的回答不适合您,您还可以查看您的数据库文件"目标会员资格"。确保选择了您的项目。如果不是(因为我的不是),选择这个可以解决问题。