## Summary **No review yet** ## Minimized query ```sql BEGIN TRANSACTION; .print https://yewtu.be/watch?v=dQw4w9WgXcQ PRAGMA writable_schema = NO; ATTACH DATABASE ':memory:' AS aux15; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (-round(like('_10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000_', CAST(10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 AS DOUBLE PRECISION)), 0), 'Wernher', 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit ATTACH DATABASE (':memory:' || '') AS aux87; PRAGMA analysis_limit = ''; PRAGMA default_cache_size = -abs(NULL); PRAGMA query_only = FALSE; .shell pwd create temp table t1(x); insert into t1 values('amx'); insert into t1 values('anx'); insert into t1 values('amy'); insert into t1 values('bmy'); select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x'; CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + likelihood(1, 0.0))) WHERE x IS NOT NULL; SELECT SUM(x) FROM t1; DETACH DATABASE aux87; ALTER TABLE t1 RENAME COLUMN x TO x_r9111; CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END; ATTACH DATABASE ':memory:' AS aux87; PRAGMA analysis_limit = ''; PRAGMA default_cache_size = -1000; PRAGMA query_only = FALSE; .shell pwd create temp table t1(x); insert into t1 values('amx'); insert into t1 values('anx'); insert into t1 values('amy'); insert into t1 values('bmy'); select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x'; CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + 1)) WHERE x IS NOT NULL; SELECT SUM(x) FROM t1; DETACH DATABASE aux87; ALTER TABLE t1 RENAME COLUMN x TO x_r9111; CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END; ATTACH DATABASE ':memory:' AS aux87; PRAGMA analysis_limit = ''; PRAGMA default_cache_size = -1000; PRAGMA query_only = FALSE; .shell pwd create temp table t1(x); insert into t1 values('amx'); insert into t1 values('anx'); insert into t1 values('amy'); insert into t1 values('bmy'); select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x'; CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + 1)) WHERE x IS NOT NULL; SELECT SUM(x) FROM t1; DETACH DATABASE aux87; ALTER TABLE t1 RENAME COLUMN x TO x_r9111; CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END; ATTACH DATABASE ':memory:' AS aux87; PRAGMA analysis_limit = ''; PRAGMA default_cache_size = -1000; PRAGMA query_only = FALSE; .shell pwd create temp table t1(x); insert into t1 values('amx'); insert into t1 values('anx'); insert into t1 values('amy'); insert into t1 values('bmy'); select * from t1 where x like 'a__' intersect select * from t1 where x like '_m_' intersect select * from t1 /**/ where x like '__x'; CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_6526 ON t1((x + 1)) WHERE x IS NOT NULL; SELECT SUM(x) FROM t1; DETACH DATABASE aux87; ALTER TABLE t1 RENAME COLUMN x TO x_r9111; CREATE TRIGGER IF NOT EXISTS trg_t1_3480 BEFORE UPDATE OF x ON t1 BEGIN SELECT RAISE(IGNORE); END; ANALYZE; SELECT * FROM t1 AS a FULL JOIN t1 AS b ON a.rowid = b.rowid; INSERT AND IGNORE INTO t1 VALUES (-1); ANALYZE; DETACH DATABASE aux15; CREATE INDEX IF NOT EXISTS idx_t1_3835 ON t1(lower(x)) WHERE x > 0; INSERT OR REPLACE INTO t1 VALUES ('x'); INSERT INTO t1 VALUES (NULL); ALTER TABLE t1 RENAME /* PRAGMA defer_foreign_keys = 1; */ COLUMN x TO x_r5534; SELECT COUNT(*) FROM t1; VACUUM main; ROLLBACK; SELECT MAX(x) FROM t1; CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_2774 ON t1(x) WHERE x IS NOT NULL; WITH a AS (SELECT * FROM t1), b AS (SELECT * FROM a), c AS (SELECT * FROM b), d AS (SELECT * FROM c) SELECT * FROM d; ALTER TABLE t1 ADD COLUMN extra_6672 NONE DEFAULT CURRENT_TIMESTAMP; DELETE FROM t1 WHERE 1; ``` ## Actual output ```sql https://yewtu.be/watch?v=dQw4w9WgXcQ CREATE TABLE "t2"("b","c","_ROWID_",PRIMARY KEY("b","c","_ROWID_"))WITHOUT ROWID; WARNING: writing to an imposter table will corrupt the "t1bc" index! Braun|30|3 Wernher|10|0 von|20|2 Braun|30 Wernher|10 von|20 ``` ## Expectation ```sql https://yewtu.be/watch?v=dQw4w9WgXcQ CREATE TABLE "t2"("b","c","_ROWID_",PRIMARY KEY("b","c","_ROWID_"))WITHOUT ROWID; Braun|30|3 Wernher|10|0 von|20|2 Braun|30 Wernher|10 von|20 ``` ## Flag ``` ```