aboutsummaryrefslogtreecommitdiff
path: root/src/insert.c
diff options
context:
space:
mode:
authordan <dan@noemail.net>2009-10-01 16:09:04 +0000
committerdan <dan@noemail.net>2009-10-01 16:09:04 +0000
commite7a94d8128bd3c5037ab66a76586a24a9f16fa31 (patch)
treebd9306cec4aa19c2db791c85a8a336ae9a730e30 /src/insert.c
parentd583502e7d85fe76c3b1567445c5bf52c2dd6d71 (diff)
downloadsqlite-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.c4
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
);