Ios Couchbaselite保存操作

Ios Couchbaselite保存操作,ios,couchbase,couchbase-lite,Ios,Couchbase,Couchbase Lite,保存CBL模型是一项昂贵的操作。将CBL模型保存到数据库需要多少秒/毫秒 CBLModel *model = [database modelForDocument:documentID]; NSError *error; [model save:&error]; 如果要保存多个模型,可以使用CouchBaseLite事务,从而大大提高性能 [database inTransaction:^BOOL() { for ( int i = 0; i < 1000; i++)

保存CBL模型是一项昂贵的操作。将CBL模型保存到数据库需要多少秒/毫秒

CBLModel *model = [database modelForDocument:documentID];
NSError *error;
[model save:&error];

如果要保存多个模型,可以使用CouchBaseLite事务,从而大大提高性能

[database inTransaction:^BOOL()
{
    for ( int i = 0; i < 1000; i++)
    {
        CBLModel *model = ...;
        NSError *error;
        [model save:&error];
    }
    return (YES);
}
];
[数据库内部事务:^BOOL()
{
对于(int i=0;i<1000;i++)
{
CBL模型*模型=。。。;
n错误*错误;
[模型保存:&错误];
}
返回(是);
}
];

没关系,我发现Couchbase中有一个批量保存操作,这正是我想要的+(BOOL)saveModels:(NSArray*)models error:(NSError**)outError;(CBLModel类中提供的API)这不是更好吗?您的解决方案越来越简单!我看了CouchBaseLite中的saveModels代码,还有一个事务。但是,在事务失败的情况下,不会为任何模型调用didSave方法。使用我的方法,尽管调用了模型的didSave方法,但可能不会保存模型。所以是的,你的方法更好。