Small. Fast. Reliable.
Choose any three.

会话模块C接口

推进变更集迭代器

int sqlite3changeset_next(sqlite3_changeset_iter * pIter);

此函数只能与由sqlite3changeset_start()函数创建的迭代器一起使用 。如果在通过sqlite3changeset_apply()传递给冲突处理程序回调的迭代器上调用它,则返回SQLITE_MISUSE,并且该调用无效。

由sqlite3changeset_start()创建迭代器后,它不会立即指向更改集中的任何更改。假设变更集不为空,则对该函数的第一个调用会使迭代器前进,以指向变更集中的第一个更改。随后的每个调用都会使迭代器前进,以指向更改集中的下一个更改(如果有)。如果在调用sqlite3changeset_next()进行了高级调用之后没有发生错误并且迭代器指向了有效的更改,则返回SQLITE_ROW。否则,如果已访问变更集中的所有变更,则返回SQLITE_DONE。

如果发生错误,则返回SQLite错误代码。可能的错误代码包括SQLITE_CORRUPT(如果变更集缓冲区已损坏)或SQLITE_NOMEM。

另请参见 对象常量函数的列表