1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-27 20:41:58 +03:00

If a NULL pointer is passed to sqlite3session_attach() in place of a table name, attach all database tables to the session object.

FossilOrigin-Name: e9037e4e4ccaa5c633759c4d041b60b631b92c6c
This commit is contained in:
dan
2011-03-22 15:21:03 +00:00
parent 7aa469cdd3
commit ff4d0f41bb
7 changed files with 88 additions and 40 deletions

View File

@ -258,5 +258,29 @@ foreach {tn sql changeset} {
}
#-------------------------------------------------------------------------
# Test that if NULL is passed to sqlite3session_attach(), all database
# tables are attached to the session object.
#
test_reset
do_execsql_test 5.0 {
CREATE TABLE t1(a PRIMARY KEY);
CREATE TABLE t2(x, y PRIMARY KEY);
}
foreach {tn sql changeset} {
1 { INSERT INTO t1 VALUES(35) } { {INSERT t1 {} {i 35}} }
2 { INSERT INTO t2 VALUES(36, 37) } { {INSERT t2 {} {i 36 i 37}} }
3 {
DELETE FROM t1 WHERE 1;
UPDATE t2 SET x = 34;
} {
{UPDATE t2 {i 36 i 37} {i 34 {} {}}}
{DELETE t1 {i 35} {}}
}
} {
do_iterator_test 5.$tn * $sql $changeset
}
finish_test