xref: /netbsd-src/external/public-domain/sqlite/man/sqlite3changeset_conflict.3 (revision 53d1339bf7f9c7367b35a9e1ebe693f9b047a47b)
1.Dd December 19, 2018
2.Dt SQLITE3CHANGESET_CONFLICT 3
3.Os
4.Sh NAME
5.Nm sqlite3changeset_conflict
6.Nd Obtain Conflicting Row Values From A Changeset Iterator
7.Sh SYNOPSIS
8.Ft int
9.Fo sqlite3changeset_conflict
10.Fa "sqlite3_changeset_iter *pIter"
11.Fa "int iVal"
12.Fa "sqlite3_value **ppValue         "
13.Fc
14.Sh DESCRIPTION
15This function should only be used with iterator objects passed to a
16conflict-handler callback by sqlite3changeset_apply()
17with either SQLITE_CHANGESET_DATA or SQLITE_CHANGESET_CONFLICT.
18If this function is called on any other iterator, SQLITE_MISUSE
19is returned and *ppValue is set to NULL.
20.Pp
21Argument iVal must be greater than or equal to 0, and less than the
22number of columns in the table affected by the current change.
23Otherwise, SQLITE_RANGE is returned and *ppValue is set
24to NULL.
25.Pp
26If successful, this function sets *ppValue to point to a protected
27sqlite3_value object containing the iVal'th value from the "conflicting
28row" associated with the current conflict-handler callback and returns
29SQLITE_OK.
30.Pp
31If some other error occurs (e.g.
32an OOM condition), an SQLite error code is returned and *ppValue is
33set to NULL.
34.Sh SEE ALSO
35.Xr sqlite3changeset_apply 3 ,
36.Xr SQLITE_CHANGESET_DATA 3 ,
37.Xr SQLITE_OK 3
38