diff options
author | drh <drh@noemail.net> | 2020-12-09 13:11:02 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2020-12-09 13:11:02 +0000 |
commit | 5602777e8fc872e638c0d9ccc116bebfd66e02e9 (patch) | |
tree | 451cf6df513777c025f6e5133d639beebba20635 /src/sqliteInt.h | |
parent | 20b86324a1b3c78b5eee3872d1934ec21c911bfa (diff) | |
download | sqlite-5602777e8fc872e638c0d9ccc116bebfd66e02e9.tar.gz sqlite-5602777e8fc872e638c0d9ccc116bebfd66e02e9.zip |
Improved comments in sqliteInt.h. No changes to code.
FossilOrigin-Name: 8ccb8d1d55fa5aaf625c30f0e7c10aa403d79b5574dbdfa3fd0271a4e546f7e3
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 68c868060..06ddb3a61 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -2304,16 +2304,22 @@ struct FKey { ** is returned. REPLACE means that preexisting database rows that caused ** a UNIQUE constraint violation are removed so that the new insert or ** update can proceed. Processing continues and no error is reported. +** UPDATE applies to insert operations only and means that the insert +** is omitted and the DO UPDATE clause of an upsert is run instead. ** -** RESTRICT, SETNULL, and CASCADE actions apply only to foreign keys. +** RESTRICT, SETNULL, SETDFLT, and CASCADE actions apply only to foreign keys. ** RESTRICT is the same as ABORT for IMMEDIATE foreign keys and the ** same as ROLLBACK for DEFERRED keys. SETNULL means that the foreign -** key is set to NULL. CASCADE means that a DELETE or UPDATE of the +** key is set to NULL. SETDFLT means that the foreign key is set +** to its default value. CASCADE means that a DELETE or UPDATE of the ** referenced table row is propagated into the row that holds the ** foreign key. ** +** The OE_Default value is a place holder that means to use whatever +** conflict resolution algorthm is required from context. +** ** The following symbolic values are used to record which type -** of action to take. +** of conflict resolution action to take. */ #define OE_None 0 /* There is no constraint to check */ #define OE_Rollback 1 /* Fail the operation and rollback the transaction */ @@ -3067,7 +3073,7 @@ struct NameContext { ** WHERE clause is omitted. */ struct Upsert { - ExprList *pUpsertTarget; /* Optional description of conflicting index */ + ExprList *pUpsertTarget; /* Optional description of conflict target */ Expr *pUpsertTargetWhere; /* WHERE clause for partial index targets */ ExprList *pUpsertSet; /* The SET clause from an ON CONFLICT UPDATE */ Expr *pUpsertWhere; /* WHERE clause for the ON CONFLICT UPDATE */ |