Не могу удалить строку из базы данных sqlite - PullRequest
2 голосов
/ 15 февраля 2012

Может ли кто-нибудь помочь мне, что он проблема в коде.Я не могу удалить строку из базы данных.

-(void) deleteData {

    sqlite3_stmt    *statement;

    NSString *destinationPath = [self getDestinationPath];

    const char *dbpath = [destinationPath UTF8String];

    if (sqlite3_open(dbpath, &database) == SQLITE_OK)
    {


        NSString *updateSQL = [NSString stringWithFormat: @"DELETE FROM BirthdayListDB WHERE id=\"%@\"",details.ids];

        const char *insert_stmt = [updateSQL UTF8String];

        sqlite3_prepare_v2(database, insert_stmt, -1, &statement, NULL);
        if (sqlite3_step(statement) == SQLITE_DONE)
        {
            NSLog(@"Row deleted");

        } 

        else
        {
            NSLog(@"Failed to delete row");
        }
        sqlite3_finalize(statement);
        sqlite3_close(database);
    }

}

Здесь (sqlite3_stmt * Statement;) я не получаю значение оператора.Я получаю нулевое значение для утверждения. Может ли любая 1 помочь мне решить эту проблему.

Спасибо!

1 Ответ

3 голосов
/ 15 февраля 2012

Просто замените

    NSString *updateSQL = [NSString stringWithFormat: @"DELETE FROM BirthdayListDB WHERE id=\"%@\"",details.ids];

С

    NSString *updateSQL = [NSString stringWithFormat: @"DELETE FROM BirthdayListDB WHERE id='%@'",details.ids];

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...