0

プロジェクトフォルダーに保存すると、.sqlite ファイルを正常に使用できました。ファイルをローカルに保存するのではなく、オンラインからプルすることを除いて、同じことをしようとしています。このコードに基づく提案はありますか? コードの下部から「準備ステートメントに問題があります」というエラー メッセージが表示されます。

    NSData *fetchedData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"https://www.dropbox.com/s/zpcieluo2qv43vy/builds.sqlite?dl=1"]];
    NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
    NSString *filePath = [documentsPath stringByAppendingPathComponent:@"builds.sqlite"];
    [fetchedData writeToFile:filePath atomically:YES];

    NSFileManager *fileMgr = [NSFileManager defaultManager];

    BOOL success = [fileMgr fileExistsAtPath:filePath];
    if (!success) {
        NSLog(@"Cannot locate database file '%@'.", filePath);
    }
    if (!(sqlite3_open([filePath UTF8String], &db) == SQLITE_OK)) {
        NSLog(@"An error has occured.");
    }
    const char *sql = "SELECT * FROM builds";
    sqlite3_stmt *sqlStatement;

    if (sqlite3_prepare(db, sql, -1, &sqlStatement, NULL) != SQLITE_OK) {
        NSLog(@"Problem with prepare statement");
    }
4

1 に答える 1

1

あなたのドロップボックスの URL は機能しません。使用する必要があります: https://www.dropbox.com/s/zpcieluo2qv43vy/builds.sqlite?dl=1

または、Webページをダウンロードしているだけです...

于 2013-01-25T10:02:17.490 に答える