小巧、快速、可靠。
擇其三。

Session 模組 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。

另請參閱 物件常數函式 清單。