Index: third_party/sqlite/src/test/fkey2.test |
diff --git a/third_party/sqlite/src/test/fkey2.test b/third_party/sqlite/src/test/fkey2.test |
index f0cc4d244cba17e61a1378d4d2d7ba5e62cfcaf1..53b90dc91c21131f78025e0b978d1cd4e713b66e 100644 |
--- a/third_party/sqlite/src/test/fkey2.test |
+++ b/third_party/sqlite/src/test/fkey2.test |
@@ -104,49 +104,56 @@ set FkeySimpleSchema { |
set FkeySimpleTests { |
- 1.1 "INSERT INTO t2 VALUES(1, 3)" {1 {foreign key constraint failed}} |
+ 1.1 "INSERT INTO t2 VALUES(1, 3)" {1 {FOREIGN KEY constraint failed}} |
1.2 "INSERT INTO t1 VALUES(1, 2)" {0 {}} |
1.3 "INSERT INTO t2 VALUES(1, 3)" {0 {}} |
- 1.4 "INSERT INTO t2 VALUES(2, 4)" {1 {foreign key constraint failed}} |
+ 1.4 "INSERT INTO t2 VALUES(2, 4)" {1 {FOREIGN KEY constraint failed}} |
1.5 "INSERT INTO t2 VALUES(NULL, 4)" {0 {}} |
- 1.6 "UPDATE t2 SET c=2 WHERE d=4" {1 {foreign key constraint failed}} |
+ 1.6 "UPDATE t2 SET c=2 WHERE d=4" {1 {FOREIGN KEY constraint failed}} |
1.7 "UPDATE t2 SET c=1 WHERE d=4" {0 {}} |
1.9 "UPDATE t2 SET c=1 WHERE d=4" {0 {}} |
1.10 "UPDATE t2 SET c=NULL WHERE d=4" {0 {}} |
- 1.11 "DELETE FROM t1 WHERE a=1" {1 {foreign key constraint failed}} |
- 1.12 "UPDATE t1 SET a = 2" {1 {foreign key constraint failed}} |
+ 1.11 "DELETE FROM t1 WHERE a=1" {1 {FOREIGN KEY constraint failed}} |
+ 1.12 "UPDATE t1 SET a = 2" {1 {FOREIGN KEY constraint failed}} |
1.13 "UPDATE t1 SET a = 1" {0 {}} |
- 2.1 "INSERT INTO t4 VALUES(1, 3)" {1 {foreign key constraint failed}} |
+ 2.1 "INSERT INTO t4 VALUES(1, 3)" {1 {FOREIGN KEY constraint failed}} |
2.2 "INSERT INTO t3 VALUES(1, 2)" {0 {}} |
2.3 "INSERT INTO t4 VALUES(1, 3)" {0 {}} |
- 4.1 "INSERT INTO t8 VALUES(1, 3)" {1 {foreign key constraint failed}} |
+ 4.1 "INSERT INTO t8 VALUES(1, 3)" {1 {FOREIGN KEY constraint failed}} |
4.2 "INSERT INTO t7 VALUES(2, 1)" {0 {}} |
4.3 "INSERT INTO t8 VALUES(1, 3)" {0 {}} |
- 4.4 "INSERT INTO t8 VALUES(2, 4)" {1 {foreign key constraint failed}} |
+ 4.4 "INSERT INTO t8 VALUES(2, 4)" {1 {FOREIGN KEY constraint failed}} |
4.5 "INSERT INTO t8 VALUES(NULL, 4)" {0 {}} |
- 4.6 "UPDATE t8 SET c=2 WHERE d=4" {1 {foreign key constraint failed}} |
+ 4.6 "UPDATE t8 SET c=2 WHERE d=4" {1 {FOREIGN KEY constraint failed}} |
4.7 "UPDATE t8 SET c=1 WHERE d=4" {0 {}} |
4.9 "UPDATE t8 SET c=1 WHERE d=4" {0 {}} |
4.10 "UPDATE t8 SET c=NULL WHERE d=4" {0 {}} |
- 4.11 "DELETE FROM t7 WHERE b=1" {1 {foreign key constraint failed}} |
- 4.12 "UPDATE t7 SET b = 2" {1 {foreign key constraint failed}} |
+ 4.11 "DELETE FROM t7 WHERE b=1" {1 {FOREIGN KEY constraint failed}} |
+ 4.12 "UPDATE t7 SET b = 2" {1 {FOREIGN KEY constraint failed}} |
4.13 "UPDATE t7 SET b = 1" {0 {}} |
- 4.14 "INSERT INTO t8 VALUES('a', 'b')" {1 {foreign key constraint failed}} |
- 4.15 "UPDATE t7 SET b = 5" {1 {foreign key constraint failed}} |
- 4.16 "UPDATE t7 SET rowid = 5" {1 {foreign key constraint failed}} |
+ 4.14 "INSERT INTO t8 VALUES('a', 'b')" {1 {FOREIGN KEY constraint failed}} |
+ 4.15 "UPDATE t7 SET b = 5" {1 {FOREIGN KEY constraint failed}} |
+ 4.16 "UPDATE t7 SET rowid = 5" {1 {FOREIGN KEY constraint failed}} |
4.17 "UPDATE t7 SET a = 10" {0 {}} |
5.1 "INSERT INTO t9 VALUES(1, 3)" {1 {no such table: main.nosuchtable}} |
- 5.2 "INSERT INTO t10 VALUES(1, 3)" {1 {foreign key mismatch}} |
+ 5.2 "INSERT INTO t10 VALUES(1, 3)" |
+ {1 {foreign key mismatch - "t10" referencing "t9"}} |
} |
do_test fkey2-1.1.0 { |
execsql [string map {/D/ {}} $FkeySimpleSchema] |
} {} |
foreach {tn zSql res} $FkeySimpleTests { |
- do_test fkey2-1.1.$tn { catchsql $zSql } $res |
+ do_test fkey2-1.1.$tn.1 { catchsql $zSql } $res |
+ do_test fkey2-1.1.$tn.2 { execsql {PRAGMA foreign_key_check(t1)} } {} |
+ do_test fkey2-1.1.$tn.3 { execsql {PRAGMA foreign_key_check(t2)} } {} |
+ do_test fkey2-1.1.$tn.4 { execsql {PRAGMA foreign_key_check(t3)} } {} |
+ do_test fkey2-1.1.$tn.5 { execsql {PRAGMA foreign_key_check(t4)} } {} |
+ do_test fkey2-1.1.$tn.6 { execsql {PRAGMA foreign_key_check(t7)} } {} |
+ do_test fkey2-1.1.$tn.7 { execsql {PRAGMA foreign_key_check(t8)} } {} |
} |
drop_all_tables |
@@ -155,6 +162,12 @@ do_test fkey2-1.2.0 { |
} {} |
foreach {tn zSql res} $FkeySimpleTests { |
do_test fkey2-1.2.$tn { catchsql $zSql } $res |
+ do_test fkey2-1.2.$tn.2 { execsql {PRAGMA foreign_key_check(t1)} } {} |
+ do_test fkey2-1.2.$tn.3 { execsql {PRAGMA foreign_key_check(t2)} } {} |
+ do_test fkey2-1.2.$tn.4 { execsql {PRAGMA foreign_key_check(t3)} } {} |
+ do_test fkey2-1.2.$tn.5 { execsql {PRAGMA foreign_key_check(t4)} } {} |
+ do_test fkey2-1.2.$tn.6 { execsql {PRAGMA foreign_key_check(t7)} } {} |
+ do_test fkey2-1.2.$tn.7 { execsql {PRAGMA foreign_key_check(t8)} } {} |
} |
drop_all_tables |
@@ -165,6 +178,12 @@ do_test fkey2-1.3.0 { |
foreach {tn zSql res} $FkeySimpleTests { |
if {$res == "0 {}"} { set res {0 1} } |
do_test fkey2-1.3.$tn { catchsql $zSql } $res |
+ do_test fkey2-1.3.$tn.2 { execsql {PRAGMA foreign_key_check(t1)} } {} |
+ do_test fkey2-1.3.$tn.3 { execsql {PRAGMA foreign_key_check(t2)} } {} |
+ do_test fkey2-1.3.$tn.4 { execsql {PRAGMA foreign_key_check(t3)} } {} |
+ do_test fkey2-1.3.$tn.5 { execsql {PRAGMA foreign_key_check(t4)} } {} |
+ do_test fkey2-1.3.$tn.6 { execsql {PRAGMA foreign_key_check(t7)} } {} |
+ do_test fkey2-1.3.$tn.7 { execsql {PRAGMA foreign_key_check(t8)} } {} |
} |
execsql { PRAGMA count_changes = 0 } |
drop_all_tables |
@@ -196,7 +215,7 @@ do_test fkey2-1.5.1 { |
} {35.0 text} |
do_test fkey2-1.5.2 { |
catchsql { DELETE FROM i } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
# Same test using a regular primary key with integer affinity. |
drop_all_tables |
@@ -212,7 +231,7 @@ do_test fkey2-1.6.1 { |
} {35.0 text 35 integer} |
do_test fkey2-1.6.2 { |
catchsql { DELETE FROM i } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
# Use a collation sequence on the parent key. |
drop_all_tables |
@@ -224,7 +243,7 @@ do_test fkey2-1.7.1 { |
INSERT INTO j VALUES('sqlite'); |
} |
catchsql { DELETE FROM i } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
# Use the parent key collation even if it is default and the child key |
# has an explicit value. |
@@ -236,7 +255,7 @@ do_test fkey2-1.7.2 { |
INSERT INTO i VALUES('SQLite'); |
} |
catchsql { INSERT INTO j VALUES('sqlite') } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-1.7.3 { |
execsql { |
INSERT INTO i VALUES('sqlite'); |
@@ -244,7 +263,7 @@ do_test fkey2-1.7.3 { |
DELETE FROM i WHERE i = 'SQLite'; |
} |
catchsql { DELETE FROM i WHERE i = 'sqlite' } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
#------------------------------------------------------------------------- |
# This section (test cases fkey2-2.*) contains tests to check that the |
@@ -252,7 +271,7 @@ do_test fkey2-1.7.3 { |
# |
proc fkey2-2-test {tn nocommit sql {res {}}} { |
if {$res eq "FKV"} { |
- set expected {1 {foreign key constraint failed}} |
+ set expected {1 {FOREIGN KEY constraint failed}} |
} else { |
set expected [list 0 $res] |
} |
@@ -260,7 +279,7 @@ proc fkey2-2-test {tn nocommit sql {res {}}} { |
if {$nocommit} { |
do_test fkey2-2.${tn}c { |
catchsql COMMIT |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
} |
} |
@@ -356,7 +375,7 @@ fkey2-2-test 65 1 "INSERT INTO leaf VALUES('b', 2)" |
fkey2-2-test 66 1 "INSERT INTO leaf VALUES('c', 1)" |
do_test fkey2-2-test-67 { |
catchsql "INSERT INTO node SELECT parent, 3 FROM leaf" |
-} {1 {column nodeid is not unique}} |
+} {1 {UNIQUE constraint failed: node.nodeid}} |
fkey2-2-test 68 0 "COMMIT" FKV |
fkey2-2-test 69 1 "INSERT INTO node VALUES(1, NULL)" |
fkey2-2-test 70 0 "INSERT INTO node VALUES(2, NULL)" |
@@ -398,14 +417,14 @@ do_test fkey2-3.1.2 { |
} {} |
do_test fkey2-3.1.3 { |
catchsql { UPDATE ab SET a = 5 } |
-} {1 {constraint failed}} |
+} {1 {CHECK constraint failed: ef}} |
do_test fkey2-3.1.4 { |
execsql { SELECT * FROM ab } |
} {1 b} |
do_test fkey2-3.1.4 { |
execsql BEGIN; |
catchsql { UPDATE ab SET a = 5 } |
-} {1 {constraint failed}} |
+} {1 {CHECK constraint failed: ef}} |
do_test fkey2-3.1.5 { |
execsql COMMIT; |
execsql { SELECT * FROM ab; SELECT * FROM cd; SELECT * FROM ef } |
@@ -414,7 +433,7 @@ do_test fkey2-3.1.5 { |
do_test fkey2-3.2.1 { |
execsql BEGIN; |
catchsql { DELETE FROM ab } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-3.2.2 { |
execsql COMMIT |
execsql { SELECT * FROM ab; SELECT * FROM cd; SELECT * FROM ef } |
@@ -536,7 +555,7 @@ do_test fkey2-7.1 { |
} {} |
do_test fkey2-7.2 { |
catchsql { INSERT INTO t2 VALUES(1, 'A'); } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-7.3 { |
execsql { |
INSERT INTO t1 VALUES(1, 2); |
@@ -549,19 +568,19 @@ do_test fkey2-7.4 { |
} {} |
do_test fkey2-7.5 { |
catchsql { UPDATE t2 SET c = 3 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-7.6 { |
catchsql { DELETE FROM t1 WHERE a = 2 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-7.7 { |
execsql { DELETE FROM t1 WHERE a = 1 } |
} {} |
do_test fkey2-7.8 { |
catchsql { UPDATE t1 SET a = 3 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-7.9 { |
catchsql { UPDATE t2 SET rowid = 3 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
#------------------------------------------------------------------------- |
# Test that it is not possible to enable/disable FK support while a |
@@ -626,7 +645,7 @@ do_test fkey2-9.1.4 { |
} {2 two} |
do_test fkey2-9.1.5 { |
catchsql { DELETE FROM t1 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-9.2.1 { |
execsql { |
@@ -681,7 +700,7 @@ foreach zSql [list { |
do_test fkey2-10.1.[incr tn] { |
execsql $zSql |
catchsql { INSERT INTO c DEFAULT VALUES } |
- } {1 {foreign key mismatch}} |
+ } {/1 {foreign key mismatch - "c" referencing "."}/} |
} |
# "rowid" cannot be used as part of a child or parent key definition |
@@ -709,7 +728,7 @@ do_test fkey2-10.2.1 { |
INSERT INTO t1(rowid, a, b) VALUES(1, 1, 1); |
INSERT INTO t2 VALUES(1, 1); |
} |
-} {1 {foreign key mismatch}} |
+} {1 {foreign key mismatch - "t2" referencing "t1"}} |
do_test fkey2-10.2.2 { |
drop_all_tables |
catchsql { |
@@ -761,13 +780,13 @@ do_test fkey2-12.1.3 { |
} {} |
do_test fkey2-12.1.4 { |
catchsql "UPDATE t1 SET b = 'five' WHERE b = 'two'" |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-12.1.5 { |
execsql "DELETE FROM t1 WHERE b = 'two'" |
} {} |
do_test fkey2-12.1.6 { |
catchsql "COMMIT" |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-12.1.7 { |
execsql { |
INSERT INTO t1 VALUES(2, 'two'); |
@@ -809,7 +828,7 @@ do_test fkey2-12.2.3 { |
INSERT INTO t2 VALUES('b'); |
} |
catchsql { DELETE FROM t1 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-12.2.4 { |
execsql { |
SELECT * FROM t1; |
@@ -847,14 +866,14 @@ do_test fkey2-12.3.2 { |
} {no possibly} |
do_test fkey2-12.3.3 { |
catchsql { INSERT INTO down(c39, c38) VALUES('yes', 'no') } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-12.3.4 { |
execsql { |
INSERT INTO up(c34, c35) VALUES('yes', 'no'); |
INSERT INTO down(c39, c38) VALUES('yes', 'no'); |
} |
catchsql { DELETE FROM up WHERE c34 = 'yes' } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-12.3.5 { |
execsql { |
DELETE FROM up WHERE c34 = 'possibly'; |
@@ -882,7 +901,7 @@ foreach {tn stmt} { |
} { |
do_test fkey2-13.1.$tn.1 { |
catchsql $stmt |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-13.1.$tn.2 { |
execsql { |
SELECT * FROM pp; |
@@ -892,7 +911,7 @@ foreach {tn stmt} { |
do_test fkey2-13.1.$tn.3 { |
execsql BEGIN; |
catchsql $stmt |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-13.1.$tn.4 { |
execsql { |
COMMIT; |
@@ -996,13 +1015,13 @@ ifcapable altertable { |
] |
do_test fkey2-14.2.2.3 { |
catchsql { INSERT INTO t3 VALUES(1, 2, 3) } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-14.2.2.4 { |
execsql { INSERT INTO t4 VALUES(1, NULL) } |
} {} |
do_test fkey2-14.2.2.5 { |
catchsql { UPDATE t4 SET b = 5 } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-14.2.2.6 { |
catchsql { UPDATE t4 SET b = 1 } |
} {0 {}} |
@@ -1077,13 +1096,13 @@ ifcapable altertable { |
] |
do_test fkey2-14.2tmp.2.3 { |
catchsql { INSERT INTO t3 VALUES(1, 2, 3) } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-14.2tmp.2.4 { |
execsql { INSERT INTO t4 VALUES(1, NULL) } |
} {} |
do_test fkey2-14.2tmp.2.5 { |
catchsql { UPDATE t4 SET b = 5 } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-14.2tmp.2.6 { |
catchsql { UPDATE t4 SET b = 1 } |
} {0 {}} |
@@ -1159,13 +1178,13 @@ ifcapable altertable { |
] |
do_test fkey2-14.2aux.2.3 { |
catchsql { INSERT INTO t3 VALUES(1, 2, 3) } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-14.2aux.2.4 { |
execsql { INSERT INTO t4 VALUES(1, NULL) } |
} {} |
do_test fkey2-14.2aux.2.5 { |
catchsql { UPDATE t4 SET b = 5 } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-14.2aux.2.6 { |
catchsql { UPDATE t4 SET b = 1 } |
} {0 {}} |
@@ -1191,7 +1210,7 @@ do_test fkey-2.14.3.2 { |
} {} |
do_test fkey-2.14.3.3 { |
catchsql { DROP TABLE t1 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey-2.14.3.4 { |
execsql { |
DELETE FROM t2; |
@@ -1210,7 +1229,7 @@ do_test fkey-2.14.3.5 { |
} {} |
do_test fkey-2.14.3.6 { |
catchsql { DROP TABLE t1 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey-2.14.3.7 { |
execsql { |
DROP TABLE t2; |
@@ -1223,7 +1242,7 @@ do_test fkey-2.14.3.8 { |
CREATE TABLE cc(a, b, FOREIGN KEY(a, b) REFERENCES pp(x, z)); |
} |
catchsql { INSERT INTO cc VALUES(1, 2) } |
-} {1 {foreign key mismatch}} |
+} {1 {foreign key mismatch - "cc" referencing "pp"}} |
do_test fkey-2.14.3.9 { |
execsql { DROP TABLE cc } |
} {} |
@@ -1368,15 +1387,15 @@ foreach {tn zSchema} { |
do_test fkey2-16.1.$tn.3 { |
catchsql { UPDATE self SET b = 15 } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-16.1.$tn.4 { |
catchsql { UPDATE self SET a = 15 } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-16.1.$tn.5 { |
catchsql { UPDATE self SET a = 15, b = 16 } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-16.1.$tn.6 { |
catchsql { UPDATE self SET a = 17, b = 17 } |
@@ -1387,7 +1406,7 @@ foreach {tn zSchema} { |
} {} |
do_test fkey2-16.1.$tn.8 { |
catchsql { INSERT INTO self VALUES(20, 21) } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
} |
#------------------------------------------------------------------------- |
@@ -1414,10 +1433,12 @@ do_test fkey2-17.1.2 { |
set STMT [sqlite3_prepare_v2 db "INSERT INTO two VALUES(4, 5, 6)" -1 dummy] |
sqlite3_step $STMT |
} {SQLITE_CONSTRAINT} |
+verify_ex_errcode fkey2-17.1.2b SQLITE_CONSTRAINT_FOREIGNKEY |
ifcapable autoreset { |
do_test fkey2-17.1.3 { |
sqlite3_step $STMT |
} {SQLITE_CONSTRAINT} |
+ verify_ex_errcode fkey2-17.1.3b SQLITE_CONSTRAINT_FOREIGNKEY |
} else { |
do_test fkey2-17.1.3 { |
sqlite3_step $STMT |
@@ -1426,6 +1447,7 @@ ifcapable autoreset { |
do_test fkey2-17.1.4 { |
sqlite3_finalize $STMT |
} {SQLITE_CONSTRAINT} |
+verify_ex_errcode fkey2-17.1.4b SQLITE_CONSTRAINT_FOREIGNKEY |
do_test fkey2-17.1.5 { |
execsql { |
INSERT INTO one VALUES(2, 3, 4); |
@@ -1441,7 +1463,7 @@ do_test fkey2-17.1.6 { |
INSERT INTO one VALUES(0, 0, 0); |
UPDATE two SET e=e+1, f=f+1; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-17.1.7 { |
execsql { SELECT * FROM one } |
} {1 2 3 2 3 4 3 4 5 0 0 0} |
@@ -1469,9 +1491,11 @@ do_test fkey2-17.1.12 { |
do_test fkey2-17.1.13 { |
sqlite3_step $STMT |
} {SQLITE_CONSTRAINT} |
+verify_ex_errcode fkey2-17.1.13b SQLITE_CONSTRAINT_FOREIGNKEY |
do_test fkey2-17.1.14 { |
sqlite3_finalize $STMT |
} {SQLITE_CONSTRAINT} |
+verify_ex_errcode fkey2-17.1.14b SQLITE_CONSTRAINT_FOREIGNKEY |
drop_all_tables |
do_test fkey2-17.2.1 { |
@@ -1530,7 +1554,7 @@ ifcapable auth { |
} |
} {} |
- proc auth {args} {eval lappend ::authargs $args ; return SQLITE_OK} |
+ proc auth {args} {eval lappend ::authargs [lrange $args 0 4]; return SQLITE_OK} |
db auth auth |
# An insert on the parent table must read the child key of any deferred |
@@ -1595,7 +1619,7 @@ ifcapable auth { |
} |
do_test fkey2-18.8 { |
catchsql { INSERT INTO short VALUES(1, 3, 2) } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-18.9 { |
execsql { INSERT INTO short VALUES(1, 3, NULL) } |
} {} |
@@ -1604,7 +1628,7 @@ ifcapable auth { |
} {1 3 2 1 3 {}} |
do_test fkey2-18.11 { |
catchsql { UPDATE short SET f = 2 WHERE f IS NULL } |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
db auth {} |
unset authargs |
@@ -1625,9 +1649,11 @@ do_test fkey2-19.2 { |
sqlite3_bind_int $S 1 2 |
sqlite3_step $S |
} {SQLITE_CONSTRAINT} |
+verify_ex_errcode fkey2-19.2b SQLITE_CONSTRAINT_FOREIGNKEY |
do_test fkey2-19.3 { |
sqlite3_reset $S |
} {SQLITE_CONSTRAINT} |
+verify_ex_errcode fkey2-19.3b SQLITE_CONSTRAINT_FOREIGNKEY |
do_test fkey2-19.4 { |
sqlite3_bind_int $S 1 1 |
sqlite3_step $S |
@@ -1654,7 +1680,7 @@ foreach {tn insert} { |
} { |
do_test fkey2-20.2.$tn.1 { |
catchsql "$insert INTO cc VALUES(1, 2)" |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-20.2.$tn.2 { |
execsql { SELECT * FROM cc } |
} {} |
@@ -1665,7 +1691,7 @@ foreach {tn insert} { |
INSERT INTO cc VALUES(1, 2); |
} |
catchsql "$insert INTO cc VALUES(3, 4)" |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-20.2.$tn.4 { |
execsql { COMMIT ; SELECT * FROM cc } |
} {1 2} |
@@ -1690,13 +1716,13 @@ foreach {tn update} { |
} {} |
do_test fkey2-20.3.$tn.2 { |
catchsql "$update pp SET a = 1" |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-20.3.$tn.3 { |
execsql { SELECT * FROM pp } |
} {2 two} |
do_test fkey2-20.3.$tn.4 { |
catchsql "$update cc SET d = 1" |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-20.3.$tn.5 { |
execsql { SELECT * FROM cc } |
} {1 2} |
@@ -1706,7 +1732,7 @@ foreach {tn update} { |
INSERT INTO pp VALUES(3, 'three'); |
} |
catchsql "$update pp SET a = 1 WHERE a = 2" |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-20.3.$tn.7 { |
execsql { COMMIT ; SELECT * FROM pp } |
} {2 two 3 three} |
@@ -1716,7 +1742,7 @@ foreach {tn update} { |
INSERT INTO cc VALUES(2, 2); |
} |
catchsql "$update cc SET d = 1 WHERE c = 1" |
- } {1 {foreign key constraint failed}} |
+ } {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-20.3.$tn.9 { |
execsql { COMMIT ; SELECT * FROM cc } |
} {1 2 2 2} |
@@ -1742,7 +1768,7 @@ do_test fkey2-genfkey.1.1 { |
} {} |
do_test fkey2-genfkey.1.2 { |
catchsql { INSERT INTO t2 VALUES(1, 2) } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.3 { |
execsql { |
INSERT INTO t1 VALUES(1, 2, 3); |
@@ -1754,7 +1780,7 @@ do_test fkey2-genfkey.1.4 { |
} {} |
do_test fkey2-genfkey.1.5 { |
catchsql { UPDATE t2 SET e = 5 WHERE e IS NULL } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.6 { |
execsql { UPDATE t2 SET e = 1 WHERE e IS NULL } |
} {} |
@@ -1763,13 +1789,13 @@ do_test fkey2-genfkey.1.7 { |
} {} |
do_test fkey2-genfkey.1.8 { |
catchsql { UPDATE t1 SET a = 10 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.9 { |
catchsql { UPDATE t1 SET a = NULL } |
} {1 {datatype mismatch}} |
do_test fkey2-genfkey.1.10 { |
catchsql { DELETE FROM t1 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.11 { |
execsql { UPDATE t2 SET e = NULL } |
} {} |
@@ -1789,7 +1815,7 @@ do_test fkey2-genfkey.1.13 { |
} {} |
do_test fkey2-genfkey.1.14 { |
catchsql { INSERT INTO t3 VALUES(3, 1, 4) } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.15 { |
execsql { |
INSERT INTO t1 VALUES(1, 1, 4); |
@@ -1798,16 +1824,16 @@ do_test fkey2-genfkey.1.15 { |
} {} |
do_test fkey2-genfkey.1.16 { |
catchsql { DELETE FROM t1 } |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.17 { |
catchsql { UPDATE t1 SET b = 10} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-genfkey.1.18 { |
execsql { UPDATE t1 SET a = 10} |
} {} |
do_test fkey2-genfkey.1.19 { |
catchsql { UPDATE t3 SET h = 'hello' WHERE i = 3} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
drop_all_tables |
do_test fkey2-genfkey.2.1 { |
@@ -1920,7 +1946,7 @@ do_test fkey2-dd08e5.1.2 { |
catchsql { |
DELETE FROM tdd08; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-dd08e5.1.3 { |
execsql { |
SELECT * FROM tdd08; |
@@ -1930,17 +1956,17 @@ do_test fkey2-dd08e5.1.4 { |
catchsql { |
INSERT INTO tdd08_b VALUES(400,500,300); |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-dd08e5.1.5 { |
catchsql { |
UPDATE tdd08_b SET x=x+1; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-dd08e5.1.6 { |
catchsql { |
UPDATE tdd08 SET a=a+1; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
#------------------------------------------------------------------------- |
# Verify that ticket ce7c133ea6cc9ccdc1a60d80441f80b6180f5eba |
@@ -1961,12 +1987,12 @@ do_test fkey2-ce7c13.1.2 { |
catchsql { |
UPDATE tce71 set b = 201 where a = 100; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-ce7c13.1.3 { |
catchsql { |
UPDATE tce71 set a = 101 where a = 100; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-ce7c13.1.4 { |
execsql { |
CREATE TABLE tce73(a INTEGER PRIMARY KEY, b, UNIQUE(a,b)); |
@@ -1981,11 +2007,11 @@ do_test fkey2-ce7c13.1.5 { |
catchsql { |
UPDATE tce73 set b = 201 where a = 100; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
do_test fkey2-ce7c13.1.6 { |
catchsql { |
UPDATE tce73 set a = 101 where a = 100; |
} |
-} {1 {foreign key constraint failed}} |
+} {1 {FOREIGN KEY constraint failed}} |
finish_test |