diff options
author | dan <dan@noemail.net> | 2009-10-01 16:09:04 +0000 |
---|---|---|
committer | dan <dan@noemail.net> | 2009-10-01 16:09:04 +0000 |
commit | e7a94d8128bd3c5037ab66a76586a24a9f16fa31 (patch) | |
tree | bd9306cec4aa19c2db791c85a8a336ae9a730e30 /src/insert.c | |
parent | d583502e7d85fe76c3b1567445c5bf52c2dd6d71 (diff) | |
download | sqlite-e7a94d8128bd3c5037ab66a76586a24a9f16fa31.tar.gz sqlite-e7a94d8128bd3c5037ab66a76586a24a9f16fa31.zip |
If an update does not modify any child or parent key columns, omit foreign key processing for the statement.
FossilOrigin-Name: edff3500058eb8ad2381f855ef7a09ecb680f7b8
Diffstat (limited to 'src/insert.c')
-rw-r--r-- | src/insert.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/insert.c b/src/insert.c index d71407420..94b741af9 100644 --- a/src/insert.c +++ b/src/insert.c @@ -979,7 +979,7 @@ void sqlite3Insert( sqlite3GenerateConstraintChecks(pParse, pTab, baseCur, regIns, aRegIdx, keyColumn>=0, 0, onError, endOfLoop, &isReplace ); - sqlite3FkCheck(pParse, pTab, 0, 0, regIns); + sqlite3FkCheck(pParse, pTab, 0, regIns); sqlite3CompleteInsertion( pParse, pTab, baseCur, regIns, aRegIdx, 0, appendFlag, isReplace==0 ); @@ -1271,7 +1271,7 @@ void sqlite3GenerateConstraintChecks( pTrigger = sqlite3TriggersExist(pParse, pTab, TK_DELETE, 0, 0); } sqlite3MultiWrite(pParse); - if( pTrigger || sqlite3FkRequired(pParse, pTab, 0) ){ + if( pTrigger || sqlite3FkRequired(pParse, pTab, 0, 0) ){ sqlite3GenerateRowDelete( pParse, pTab, baseCur, regRowid, 0, pTrigger, OE_Replace ); |