-C Various\sfixes\sso\sthat\s"make\stest"\sworks\swith\sOMIT_FOREIGN_KEY,\sOMIT_TRIGGER\sand\sOMIT_ALTER_TABLE.
-D 2009-09-29T06:33:24
+C Remove\san\sunused\svariable\sfrom\sfkey.c.
+D 2009-09-29T11:28:52
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
F Makefile.in 4ca3f1dd6efa2075bcb27f4dc43eef749877740d
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
F src/delete.c 2a3d6fc0861b2f8dbd9feb7847b390267b281c60
F src/expr.c c7f3f718bd5c392344ec8694a41c1824f30cf375
F src/fault.c dc88c821842157460750d2d61a8a8b4197d047ff
-F src/fkey.c e31715c14bd9fbe398551aceb5c5454755bdfa52
+F src/fkey.c 93b4f9a94828046164db48c09844f1e6ec393917
F src/func.c e536218d193b8d326aab91120bc4c6f28aa2b606
F src/global.c 271952d199a8cc59d4ce840b3bbbfd2f30c8ba32
F src/hash.c ebcaa921ffd9d86f7ea5ae16a0a29d1c871130a7
F test/filectrl.test 8923a6dc7630f31c8a9dd3d3d740aa0922df7bf8
F test/filefmt.test 84e3d0fe9f12d0d2ac852465c6f8450aea0d6f43
F test/fkey1.test 01c7de578e11747e720c2d9aeef27f239853c4da
-F test/fkey2.test 3efd8c692e480205cc46026ff2430977e032133a
+F test/fkey2.test 73f7f72f9890f53b3e6a6c9c121d110761d8801c
F test/fkey3.test c17565b40c97a0dd5102610183c744611171b5ec
F test/fkey_malloc.test da912d000bb6ceb1cd11b655de1989762fa71ceb
F test/format4.test 1f0cac8ff3895e9359ed87e41aaabee982a812eb
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 5b4d46374a8e808246a1813c12c36c4a75371898
-R 32675a16ccbf8ba9a57d02ab929283d4
+P e4eb227b14e4bfcb9f7f284692a391b7355f0204
+R 9bd832543a2e03237ad6098a8f125dae
U dan
-Z 3978b535f562bf4c0abfd653652139fb
+Z 526a624040eb93cff35148e0dfdd82cd
-e4eb227b14e4bfcb9f7f284692a391b7355f0204
\ No newline at end of file
+582bd7682831362cd0e2f91ac0dba5ab2b7e2983
\ No newline at end of file
const char *zDb; /* Name of database containing pTab */
int isIgnoreErrors = pParse->disableTriggers;
- assert( ( pChanges && (regOld==0)!=(regNew==0)) /* UPDATE operation */
- || (!pChanges && !regOld && regNew) /* INSERT operation */
- || (!pChanges && regOld && !regNew) /* DELETE operation */
- );
+ /* Exactly one of regOld and regNew should be non-zero. */
+ assert( (regOld==0)!=(regNew==0) );
/* If foreign-keys are disabled, this function is a no-op. */
if( (db->flags&SQLITE_ForeignKeys)==0 ) return;
/* Loop through all the foreign key constraints that refer to this table */
for(pFKey = sqlite3FkReferences(pTab); pFKey; pFKey=pFKey->pNextTo){
- int iGoto; /* Address of OP_Goto instruction */
Index *pIdx = 0; /* Foreign key index for pFKey */
SrcList *pSrc;
int *aiCol = 0;
fkScanChildren(pParse, pSrc, pTab, pIdx, pFKey, aiCol, regOld, 1);
}
- if( pChanges ){
- sqlite3VdbeJumpHere(v, iGoto);
- }
sqlite3SrcListDelete(db, pSrc);
}
sqlite3DbFree(db, aiCol);
# The following tests, fkey2-10.*, test "foreign key mismatch" and
# other errors.
#
-
set tn 1
foreach zSql [list {
CREATE TABLE p(a PRIMARY KEY, b);
CREATE TABLE c(x REFERENCES p(c));
+} {
+ CREATE TABLE c(x REFERENCES v(y));
+ CREATE VIEW v AS SELECT x AS y FROM c;
+} {
+ CREATE TABLE p(a, b, PRIMARY KEY(a, b));
+ CREATE TABLE c(x REFERENCES p);
}] {
drop_all_tables