Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


SQLITE_CHANGESET_DATA(3)   Library Functions Manual   SQLITE_CHANGESET_DATA(3)

NAME
     SQLITE_CHANGESET_DATA, SQLITE_CHANGESET_NOTFOUND,
     SQLITE_CHANGESET_CONFLICT, SQLITE_CHANGESET_CONSTRAINT,
     SQLITE_CHANGESET_FOREIGN_KEY - constants passed to the conflict handler

SYNOPSIS
     #include <sqlite3.h>

     #define SQLITE_CHANGESET_DATA
     #define SQLITE_CHANGESET_NOTFOUND
     #define SQLITE_CHANGESET_CONFLICT
     #define SQLITE_CHANGESET_CONSTRAINT
     #define SQLITE_CHANGESET_FOREIGN_KEY

DESCRIPTION
     Values that may be passed as the second argument to a conflict-handler.

     SQLITE_CHANGESET_DATA
             The conflict handler is invoked with CHANGESET_DATA as the second
             argument when processing a DELETE or UPDATE change if a row with
             the required PRIMARY KEY fields is present in the database, but
             one or more other (non primary-key) fields modified by the update
             do not contain the expected "before" values.

             The conflicting row, in this case, is the database row with the
             matching primary key.

     SQLITE_CHANGESET_NOTFOUND
             The conflict handler is invoked with CHANGESET_NOTFOUND as the
             second argument when processing a DELETE or UPDATE change if a
             row with the required PRIMARY KEY fields is not present in the
             database.

             There is no conflicting row in this case.  The results of
             invoking the sqlite3changeset_conflict() API are undefined.

     SQLITE_CHANGESET_CONFLICT
             CHANGESET_CONFLICT is passed as the second argument to the
             conflict handler while processing an INSERT change if the
             operation would result in duplicate primary key values.

             The conflicting row in this case is the database row with the
             matching primary key.

     SQLITE_CHANGESET_FOREIGN_KEY
             If foreign key handling is enabled, and applying a changeset
             leaves the database in a state containing foreign key violations,
             the conflict handler is invoked with CHANGESET_FOREIGN_KEY as the
             second argument exactly once before the changeset is committed.
             If the conflict handler returns CHANGESET_OMIT, the changes,
             including those that caused the foreign key constraint violation,
             are committed.  Or, if it returns CHANGESET_ABORT, the changeset
             is rolled back.

             No current or conflicting row information is provided.  The only
             function it is possible to call on the supplied
             sqlite3_changeset_iter handle is sqlite3changeset_fk_conflicts().

     SQLITE_CHANGESET_CONSTRAINT
             If any other constraint violation occurs while applying a change
             (i.e.  a UNIQUE, CHECK or NOT NULL constraint), the conflict
             handler is invoked with CHANGESET_CONSTRAINT as the second
             argument.

             There is no conflicting row in this case.  The results of
             invoking the sqlite3changeset_conflict() API are undefined.

IMPLEMENTATION NOTES
     These declarations were extracted from the interface documentation at
     line 12071.

     #define SQLITE_CHANGESET_DATA        1
     #define SQLITE_CHANGESET_NOTFOUND    2
     #define SQLITE_CHANGESET_CONFLICT    3
     #define SQLITE_CHANGESET_CONSTRAINT  4
     #define SQLITE_CHANGESET_FOREIGN_KEY 5

NetBSD 10.99                    August 24, 2023                   NetBSD 10.99