ios - sqlite数据库无法打开

时间:2013-10-29 21:01:12

标签: ios objective-c sqlite

我正在尝试使用sqlite框架创建数据库 - 我已经设置了几种方法来获取文件路径然后打开数据库但是我收到了“无法打开数据库”的错误(如你所见,我已经注销了sqlite3_open的结果)

这是我的头文件:

#import "sqlite3.h"

@interface ProgListViewController : UITableViewController <UITableViewDataSource, UITableViewDelegate, UIAlertViewDelegate>
{
    sqlite3 *db;
}

-(NSString *) filePath;
-(void)openDB;

这是我的实施文件:

//file path to db
-(NSString *) filePath {
    NSLog(@"pathtest");
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
    return [[paths objectAtIndex:0] stringByAppendingPathComponent:@"bp.sql"];
}

//open the db
-(void)openDB {
    NSLog(@"opentest");
    if (sqlite3_open([[self filePath] UTF8String], &db) !=SQLITE_OK) {
        NSLog(@"%d", sqlite3_open([[self filePath] UTF8String], &db));
        sqlite3_close(db);
        NSLog(@"Database failed to open");
    } else {
       NSLog(@"database opened");
    }
}

任何想法?

1 个答案:

答案 0 :(得分:3)

我认为您打算使用NSDocumentDirectory而不是NSDocumentationDirectory