0

データベースは読み取り専用です。

コード:

//获取数据库
    FMDatabase * db = [dataManager openDataBase];
    //判断数据库是否能打开
    if ([db open]) {
        //获取通话记录中所有的address
        FMResultSet * rs = [db executeQuery:@"SELECT address FROM privacy_call"];
        NSString * markaddress = nil;
        while ([rs next]) {
            NSString * address = [rs stringForColumn:@"address"];
            if ([self isEqualContactNumber:address withPrivacyNumber:number] && ![markaddress isEqualToString:address]) {
                markaddress = address;
                //删除数据
                BOOL resultSet = [db executeUpdate:@"DELETE FROM privacy_call WHERE address = ?",address];
                success = resultSet;
            }
        }
        [rs close];
    }
    else {
        NSLog(@"数据库打开错误");
        return NO;
    }
4

1 に答える 1

0

質問の意味が非常にわかりにくい、

しかし、推測すると、この行は次のように更新する必要があります。

//assuming executeUpdate returns a BOOL
BOOL success = [db executeUpdate:[NSString stringWithFormat:@"DELETE FROM privacy_call WHERE address = %@",address]];
于 2013-06-08T03:19:26.653 に答える