小巧。快速。可靠。
任選三項。

Session 模組 C 介面

從變更集反覆運算器取得衝突列值

int sqlite3changeset_conflict(
  sqlite3_changeset_iter *pIter,  /* Changeset iterator */
  int iVal,                       /* Column number */
  sqlite3_value **ppValue         /* OUT: Value from conflicting row */
);

此函數僅應與反覆運算器物件搭配使用,這些物件由 sqlite3changeset_apply() 傳遞給衝突處理常式程式,並搭配 SQLITE_CHANGESET_DATASQLITE_CHANGESET_CONFLICT。如果對任何其他反覆運算器呼叫此函數,則會傳回 SQLITE_MISUSE,且 *ppValue 會設為 NULL。

引數 iVal 必須大於或等於 0,且小於受目前變更影響的資料表中的欄位數。否則,會傳回 SQLITE_RANGE,且 *ppValue 會設為 NULL。

如果成功,此函數會將 *ppValue 設為指向受保護的 sqlite3_value 物件,其中包含與目前衝突處理常式程式關聯的「衝突列」中的第 iVal 個值,並傳回 SQLITE_OK。

如果發生其他錯誤(例如 OOM 狀況),則會傳回 SQLite 錯誤碼,且 *ppValue 會設為 NULL。

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