Я создаю приложение и делаю обновление с помощью sqlite. Вот мой кусок кода ниже:Я получаю сообщение об ошибке с sqlite3_prepare_v2
NSFileManager *fileMgr = [NSFileManager defaultManager];
NSString *dbPath = [[[NSBundle mainBundle] resourcePath ]stringByAppendingPathComponent:@"appforoffice.sqlite"];
BOOL success = [fileMgr fileExistsAtPath:dbPath];
if(!success)
{
NSLog(@"Cannot locate database file '%@'.", dbPath);
}
if(!(sqlite3_open([dbPath UTF8String], &database) == SQLITE_OK))
{
NSLog(@"An error has occured.");
}
const char *sql = "UPDATE settings SET `value`='Off' WHERE `type`=?";
if(sqlite3_prepare_v2(database, sql, -1, &updateStmt, NULL) == SQLITE_OK)
{
if(sqlite3_bind_text(updateStmt, 1, [updateType UTF8String], -1, SQLITE_TRANSIENT) == SQLITE_OK)
{
if(sqlite3_step(updateStmt) == SQLITE_DONE) {
NSLog(@"Update Done successfuly");
}
else {
NSLog(@"Error while updating. '%s'", sqlite3_errmsg(database));
}
sqlite3_finalize(updateStmt);
sqlite3_close(database);
}
else
{
NSLog(@"Error while binding variable. '%s'", sqlite3_errmsg(database));
}
}
else
{
NSLog(@"Error while creating update statement. '%s'", sqlite3_errmsg(database));
}
Но ребята, я не получаю ошибку. Но проблема в том, что таблица базы данных не выполняется по запросу. Я уверен, что запрос в порядке.
Я смущен о проблеме, не могу найти способ выйти из этого.
@Anki Спасибо ... –
Вам нужно будет опубликовать запрос и, возможно, схему, если вы хотите решить проблему с этим типом базы данных. – trojanfoe
@SoumalyaBanerjee Не могли бы вы проверить проблему, упомянутую здесь http://stackoverflow.com/questions/39916124/sqlite3-prepare-v2-exc-bad-access-in-ios-10. Я также столкнулся с аналогичной проблемой после обновления до iOS-10. – CoDe