mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-30 19:03:16 +03:00
Preserve the COLLATE operator on an index on an expression when resolving
the use of that expression into a reference to the index. See [forum:/info/7efabf4b03328e57|forum thread 7efabf4b03328e57] for details. FossilOrigin-Name: a8da85c57e07721dc1c918d67433d6c99ce48421e369123cc3194d855e55f7e8
This commit is contained in:
@ -487,4 +487,23 @@ ifcapable like_match_blobs {
|
||||
} {2.0}
|
||||
}
|
||||
|
||||
# 2022-04-30 https://sqlite.org/forum/info/7efabf4b03328e57
|
||||
# Assertion fault during a DELETE INDEXED BY.
|
||||
#
|
||||
reset_db
|
||||
do_execsql_test indexexpr-1900 {
|
||||
CREATE TABLE t1(x TEXT PRIMARY KEY, y TEXT, z INT);
|
||||
INSERT INTO t1(x,y,z) VALUES('alpha','ALPHA',1),('bravo','charlie',1);
|
||||
CREATE INDEX i1 ON t1(+y COLLATE NOCASE);
|
||||
SELECT * FROM t1;
|
||||
} {alpha ALPHA 1 bravo charlie 1}
|
||||
do_execsql_test indexexpr-1910 {
|
||||
DELETE FROM t1 INDEXED BY i1
|
||||
WHERE x IS +y COLLATE NOCASE IN (SELECT z FROM t1)
|
||||
RETURNING *;
|
||||
} {alpha ALPHA 1}
|
||||
do_execsql_test indexexpr-1920 {
|
||||
SELECT * FROM t1;
|
||||
} {bravo charlie 1}
|
||||
|
||||
finish_test
|
||||
|
Reference in New Issue
Block a user