Вставка NSData в SQLite на iPhone

До сих пор мне удалось создать этот метод для вставки в базу данных SQLite по iPhone:

- (void) insertToDB :(NSString *)Identifier :(NSString *)Name
{
    sqlite3 *database;

    if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK)
    {
        char *sql1 = "INSERT INTO table VALUES ('";
        const char *sql2 = [Identifier cStringUsingEncoding:[NSString defaultCStringEncoding]];
        char *sql3 = "', '";
        const char *sql4 = [Name cStringUsingEncoding:[NSString defaultCStringEncoding]];
        char *sql5 = "')";

        char *sqlStatement[255];
        strcpy(sqlStatement, sql1);
        strcat(sqlStatement, sql2);
        strcat(sqlStatement, sql3);
        strcat(sqlStatement, sql4);
        strcat(sqlStatement, sql5);

        sqlite3_stmt *compiledStatement;

        if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK)
        {
            sqlite3_last_insert_rowid(database);
            sqlite3_reset(compiledStatement);
        }

        sqlite3_finalize(compiledStatment);
    }
    sqlite3_close(database);
}

Теперь я смотрю на хранение изображения в базе данных. До сих пор я нашел это:

UIImage *cachedImage = [UIImage imageNamed:@"Icon.png"];
NSData *dataForImage = UIImagePNGRepresentation(cachedImage);

Но я испытываю затруднения при попытке вставить этот NSData в массив символов, который делает sqlStatement. Кто-либо понял, как сделать это?

(У меня есть поле в базе данных блоба типа для этого).

Спасибо

6
задан Community 23 May 2017 в 11:52
поделиться