## Summary **No review yet** ## Minimized query ```sql SAVEPOINT sp4711; SAVEPOINT sp6973; -- -html CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (strftime('%s', 9223372036854775807), '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 SAVEPOINT sp9368; PRAGMA legacy_alter_table = NO; CREATE TABLE T1 ( a INTEGER, b REAL ); CREATE TABLE `T2` ( a INTEGER, b REAL ); INSERT INTO T1 VALUES (json_remove(abs(('123' || ''))),-(-(1.0))); INSERT INTO "T2" VALUES (1,-1.0),(2,9e999); INSERT or REPLACE INTO T1 SELECT * FROM T2; CREATE TABLE T1 ( a INTEGER, b TEXT ); CREATE TABLE T2 ( a INTEGER, b TEXT ); INSERT INTO T1 VALUES (1,'a'),(2,'b'); INSERT INTO T2 VALUES (1,'c'),(1,'d'); SELECT T1.b, ( SELECT GROUP_CONCAT(b,',') FROM T2 WHERE T2.a=T1.a ) AS c FROM T1; SELECT * FROM T1; CREATE TRIGGER IF NOT EXISTS trg_T2_1657 AFTER UPDATE ON T2 BEGIN INSERT INTO T2(a) VALUES (NULL); END; SELECT GROUP_CONCAT(b, '|') FROM T2; SELECT SUM(b) FROM T2; ALTER TABLE T1 DROP COLUMN a; DELETE FROM T1 WHERE b IS NULL; ALTER TABLE T1 RENAME TO T1_r6976; ROLLBACK TO sp9368; RELEASE sp9368; SELECT COUNT(*) FROM T2; ALTER TABLE T1 RENAME TO T1_r6087; SELECT COUNT(b) FILTER (WHERE NULL) OVER (PARTITION BY b ORDER BY b ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) FROM T2; ANALYZE; INSERT INTO T1 VALUES (NULL, 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b; SELECT * FROM t1 AS a LEFT JOIN T2 AS b ON a.rowid = b.rowid; CREATE TABLE main.T ( A VARCHAR(20), B VARCHAR(30), C VARCHAR(30), PRIMARY KEY (A, B), UNIQUE (A, C) ); INSERT INTO T VALUES ('a', 'p', 'x'); INSERT INTO T VALUES ('a', 'q', 'y'); INSERT INTO T VALUES ('b', 'p', 'z'); INSERT INTO T VALUES ('c', 'r', 'w'); INSERT INTO T VALUES ('d', 's', 'v'); SELECT A, COUNT(DISTINCT B) AS D FROM T GROUP BY A HAVING COUNT(DISTINCT B) >= 1; WITH RECURSIVE r AS (SELECT * FROM T2 LIMIT 1 UNION ALL SELECT t.* FROM T2 t JOIN r ON t.b = r.b LIMIT 10) SELECT * FROM r; INSERT INTO T1 VALUES (NULL, NULL) ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b; RELEASE sp6973; REINDEX; INSERT OR REPLACE INTO T VALUES (0, NULL, ''); VACUUM main; CREATE TRIGGER IF NOT EXISTS trg_T_3547 BEFORE INSERT ON T BEGIN SELECT RAISE(ABORT, 'abort'); END; INSERT OR ABORT INTO T VALUES ('', '', -10); SELECT * FROM T2; SELECT COUNT(*) FROM T1; WITH cte AS (SELECT 1 AS x) INSERT INTO T1(b) SELECT x FROM cte WHERE 1=0; RELEASE sp4711; ALTER TABLE T RENAME COLUMN B TO B_r6949; SELECT * FROM T; SELECT COUNT(*) FROM T2; CREATE TEMP VIEW IF NOT EXISTS v_T2_9093 AS SELECT a FROM T2; SELECT COUNT(a) FILTER (WHERE NULL) OVER (PARTITION BY a ORDER BY a GROUPS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) FROM T1; ``` ## Actual output ```sql 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 1 von 20 2 Braun 30 Wernher 10 von 20 ``` ## Expectation ```sql CREATE TABLE "t2"("b","c","_ROWID_",PRIMARY KEY("b","c","_ROWID_"))WITHOUT ROWID; Braun 30 3 Wernher 10 1 von 20 2 Braun 30 Wernher 10 von 20 ``` ## Flag ``` -column ```