Dequote the "from" table in a FOREIGN KEY definition (affects the output of "pragma foreign_key_list). Fix for #3800. (CVS 6547)
FossilOrigin-Name: 600482d1619c07690b6517ded9655462bdab7538
This commit is contained in:
parent
336a5300de
commit
70d9e9cc02
16
manifest
16
manifest
@ -1,5 +1,5 @@
|
||||
C Get\srid\sof\sthe\sspecial\sRowSet\sprocessing\sin\swhere.c\sand\smove\sthat\sinto\nclients.\s\sAdded\sthe\sWHERE_DUPLICATES_OK\soption\sto\seliminate\san\sunnecessary\nRowSet\sduring\sDELETE\swith\sa\sWHERE\sclause\scontaining\sORs.\s(CVS\s6546)
|
||||
D 2009-04-24T15:46:22
|
||||
C Dequote\sthe\s"from"\stable\sin\sa\sFOREIGN\sKEY\sdefinition\s(affects\sthe\soutput\sof\s"pragma\sforeign_key_list).\sFix\sfor\s#3800.\s(CVS\s6547)
|
||||
D 2009-04-24T18:06:09
|
||||
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
|
||||
F Makefile.in 583e87706abc3026960ed759aff6371faf84c211
|
||||
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
||||
@ -109,7 +109,7 @@ F src/btmutex.c 9b899c0d8df3bd68f527b0afe03088321b696d3c
|
||||
F src/btree.c b4ec46b3adc3e2d82704c949d4b654b031a64ad6
|
||||
F src/btree.h 99fcc7e8c4a1e35afe271bcb38de1a698dfc904e
|
||||
F src/btreeInt.h df64030d632f8c8ac217ed52e8b6b3eacacb33a5
|
||||
F src/build.c d4c6d22636607aa3c937e619de6781e83db48b6f
|
||||
F src/build.c 2a50f5e65ab00fb2443af8df5a3130a2eb644b25
|
||||
F src/callback.c 73016376d6848ba987709e8c9048d4f0e0776036
|
||||
F src/complete.c cb14e06dbe79dee031031f0d9e686ff306afe07c
|
||||
F src/date.c d327ec7bb2f64b08d32b1035de82b9ba8675de91
|
||||
@ -704,7 +704,7 @@ F test/zeroblob.test 792124852ec61458a2eb527b5091791215e0be95
|
||||
F tool/diffdb.c 7524b1b5df217c20cd0431f6789851a4e0cb191b
|
||||
F tool/fragck.tcl 5265a95126abcf6ab357f7efa544787e5963f439
|
||||
F tool/genfkey.README cf68fddd4643bbe3ff8e31b8b6d8b0a1b85e20f4
|
||||
F tool/genfkey.test eda48d8258f5ad7b3b258ca3323c3c4246a846f2
|
||||
F tool/genfkey.test 405a43d54f1646bfaa7a84b03bb959aef62a3a49
|
||||
F tool/lemon.c 1a94e70103e59f20df8f81539a453629df2aa523
|
||||
F tool/lempar.c aeba88b8566ff66f8a67c96b3eb2dd95e7d8908d
|
||||
F tool/mkkeywordhash.c 8e57fbe8c4fe2f1800f9190fd361231cb8558407
|
||||
@ -724,7 +724,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
|
||||
F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
|
||||
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
||||
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
||||
P 207335fdbf992a2f5bc5982b3163a38016ba1b21
|
||||
R 321c81c869b57be31c75d6ce8e352af8
|
||||
U drh
|
||||
Z 9a5d55f141a7dc0fff1bfe4c527d36a1
|
||||
P 98606bee9e41b8969fb639fc43864e230185ca43
|
||||
R 7355728ce767986b1d7d16dc86db48ff
|
||||
U danielk1977
|
||||
Z 795d85bf9579d5df19980eca484a5a46
|
||||
|
@ -1 +1 @@
|
||||
98606bee9e41b8969fb639fc43864e230185ca43
|
||||
600482d1619c07690b6517ded9655462bdab7538
|
@ -22,7 +22,7 @@
|
||||
** COMMIT
|
||||
** ROLLBACK
|
||||
**
|
||||
** $Id: build.c,v 1.530 2009/04/23 13:22:43 drh Exp $
|
||||
** $Id: build.c,v 1.531 2009/04/24 18:06:09 danielk1977 Exp $
|
||||
*/
|
||||
#include "sqliteInt.h"
|
||||
|
||||
@ -2272,6 +2272,7 @@ void sqlite3CreateForeignKey(
|
||||
pFKey->zTo = z;
|
||||
memcpy(z, pTo->z, pTo->n);
|
||||
z[pTo->n] = 0;
|
||||
sqlite3Dequote(z);
|
||||
z += pTo->n+1;
|
||||
pFKey->pNextTo = 0;
|
||||
pFKey->nCol = nCol;
|
||||
|
@ -261,3 +261,34 @@ Error in table t6: foreign key is not unique
|
||||
Error in table t7: foreign key is not unique
|
||||
}]}"
|
||||
|
||||
# Test that ticket #3800 has been resolved.
|
||||
#
|
||||
do_test genfkey-5.1 {
|
||||
execsql {
|
||||
DROP TABLE t1; DROP TABLE t2; DROP TABLE t3;
|
||||
DROP TABLE t4; DROP TABLE t5; DROP TABLE t6;
|
||||
DROP TABLE t7; DROP TABLE t8;
|
||||
}
|
||||
} {}
|
||||
do_test genfkey-5.2 {
|
||||
execsql {
|
||||
CREATE TABLE "t.3" (c1 PRIMARY KEY);
|
||||
CREATE TABLE t13 (c1, foreign key(c1) references "t.3"(c1));
|
||||
}
|
||||
} {}
|
||||
do_test genfkey-5.3 {
|
||||
set rc [catch {exec ./sqlite3 test.db .genfkey} msg]
|
||||
} {0}
|
||||
do_test genfkey-5.4 {
|
||||
db eval $msg
|
||||
} {}
|
||||
do_test genfkey-5.5 {
|
||||
catchsql { INSERT INTO t13 VALUES(1) }
|
||||
} {1 {constraint failed}}
|
||||
do_test genfkey-5.5 {
|
||||
catchsql {
|
||||
INSERT INTO "t.3" VALUES(1);
|
||||
INSERT INTO t13 VALUES(1);
|
||||
}
|
||||
} {0 {}}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user