This commit is contained in:
2026-06-24 13:47:14 +02:00
commit fd930e15cb
2377 changed files with 1213931 additions and 0 deletions
@@ -0,0 +1,386 @@
## Summary
<!--Explain briefly what goes wrong and explain why you believe this is a bug and not the intended behavior of SQLite (if it is not a crash).-->**No review yet**
## Minimized query
```sql
SAVEPOINT sp2208;
.eqp auto
CREATE TABLE T (
a TEXT,
b REAL
);
INSERT INTO T VALUES ('a',abs(json_valid(acos(if(NULL, json_type(1.7976931348623157e+308, '$'), 0, 1.7976931348623157e+308, 0, 1.7976931348623157e+308, 1.7976931348623157e+308)), 6))), ('b',-200.5), ('c',9e999);
SELECT a,b,
LEAD(b,1) OVER (ORDER BY b DESC) AS c,
NTILE(2) OVER (ORDER BY b DESC) AS d FROM T;
PRAGMA short_column_names = NO;
PRAGMA cell_size_check;
.parameter
ATTACH DATABASE ':memory:' AS aux30;
.log ON
SAVEPOINT sp6089;
ATTACH DATABASE '' || (':memory:') AS aux56;
CREATE TABLE main.t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT);
INSERT INTO t1 VALUES (strftime('%s', format('%d', 1)), ('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
PRAGMA ignore_check_constraints = 0;
DETACH DATABASE aux56;
INSERT INTO t1 SELECT * FROM t1;
PRAGMA recursive_triggers = OFF;
CREATE TRIGGER IF NOT EXISTS trg_t1_1212 AFTER UPDATE OF c ON t1 BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
RELEASE sp6089;
CREATE TRIGGER IF NOT EXISTS trg_t1_4991 BEFORE UPDATE OF a ON t1 FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'abort'); END;
INSERT INTO t1 VALUES (1, 'x', 'x', 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
ALTER TABLE t1 ADD COLUMN extra_6256 CLOB DEFAULT '';
WITH RECURSIVE cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<1) SELECT * FROM cnt;
CREATE TABLE T1 (
A VARCHAR(20),
X VARCHAR(10),
PRIMARY KEY (A, X),
UNIQUE (X)
);
CREATE TABLE T2 (
A VARCHAR(20),
Y VARCHAR(10) UNIQUE,
PRIMARY KEY (A, Y)
);
INSERT INTO T1 VALUES ('a', 'm');
INSERT INTO T1 VALUES ('b', 'n');
INSERT INTO T2 VALUES ('b', 'k');
SELECT A FROM T1 UNION ALL SELECT A FROM T2 ORDER BY A;
SELECT * FROM t1 NATURAL JOIN t1;
ALTER TABLE t1 RENAME COLUMN d TO d_r9145;
INSERT OR FAIL INTO t1 VALUES ('x', 'x', '', -7);
INSERT INTO t1 VALUES (NULL, NULL, NULL, NULL);
UPDATE t1 SET d = d + 1 RETURNING *;
WITH RECURSIVE fib(a,b) AS (VALUES(1,1) UNION ALL SELECT b, a+b FROM fib WHERE b<1000) SELECT a FROM fib;
SELECT COUNT(*) FILTER (WHERE b IS NOT NULL), SUM(rowid) FILTER (WHERE b > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(b) FILTER (WHERE b > 0 AND b < 100), COUNT(*) FILTER (WHERE typeof(b) = "text") FROM t1;
INSERT INTO T1 VALUES ('x', 'x') ON CONFLICT(A) DO UPDATE SET A = excluded.A, X = excluded.X;
ALTER TABLE T1 DROP COLUMN A;
CREATE TEMP VIEW IF NOT EXISTS v_t1_7233 AS SELECT c FROM t1;
DETACH DATABASE aux30;
UPDATE T1 SET A = A + 1 WHERE rowid = 1;
INSERT INTO T1 SELECT * FROM T1;
CREATE TRIGGER IF NOT EXISTS trg_t1_9997 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
DELETE FROM T1 WHERE 0;
INSERT INTO t1 DEFAULT VALUES;
ALTER TABLE T2 RENAME TO T2_r5714;
DELETE FROM T2 WHERE 1;
SELECT * FROM T2 WHERE Y > ALL (SELECT Y FROM T2);
SELECT * FROM T2;
ALTER TABLE T1 ADD COLUMN extra_1823 FLOAT UNIQUE;
WITH RECURSIVE fib(a,b,n) AS (VALUES(1,1,1) UNION ALL SELECT b, a+b, n+1 FROM fib WHERE n<95) SELECT a, n FROM fib;
SELECT COUNT(*) FROM T1;
CREATE TABLE T (
A VARCHAR(20),
B VARCHAR(10),
PRIMARY KEY (A, B)
);
INSERT INTO T VALUES ('a', 'p');
INSERT INTO T VALUES ('a', 'q');
INSERT INTO T VALUES ('b', 'q');
INSERT INTO T VALUES ('c', 'r');
INSERT INTO T VALUES ('b', 'r');
INSERT INTO T VALUES ('b', 't');
SELECT B, COUNT(DISTINCT A) AS D FROM T GROUP BY B ORDER BY D DESC, B ASC;
ALTER TABLE T DROP COLUMN b;
INSERT INTO T1 DEFAULT VALUES;
SELECT COUNT(A) FILTER (WHERE A IS NOT NULL) OVER (PARTITION BY A ORDER BY A ROWS BETWEEN 2 PRECEDING AND 2 FOLLOWING EXCLUDE CURRENT /* PRAGMA application_id; */ ROW) FROM T2;
INSERT INTO t1 VALUES ('x', 'x', 1, 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
ALTER TABLE t1 DROP COLUMN b;
INSERT OR FAIL INTO T2 VALUES ('x', -9);
REINDEX;
REINDEX;
SELECT LAG(b, 0) OVER (ORDER BY b RANGE BETWEEN 1 PRECEDING AND 1 FOLLOWING) FROM T;
SELECT SUM(Y) FROM T2;
UPDATE T SET A = NULL WHERE 1;
DELETE FROM t1 WHERE c > (SELECT AVG(c) FROM t1);
SELECT COUNT(*) FILTER (WHERE c IS NOT NULL), SUM(rowid) FILTER (WHERE c > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(c) FILTER (WHERE c > 0 AND c < 100), COUNT(*) FILTER (WHERE typeof(c) = "text") FROM t1;
.eqp auto
CREATE TABLE T (
a TEXT,
b REAL
);
INSERT INTO T VALUES ('a',abs(json_valid(9223372036854775806, 6))), ('b',-200.5), ('c',9e999);
SELECT a,b,
LEAD(b,1) OVER (ORDER BY b DESC) AS c,
NTILE(2) OVER (ORDER BY b DESC) AS d FROM T;
PRAGMA short_column_names = NO;
PRAGMA cell_size_check;
.parameter
ATTACH DATABASE ':memory:' AS aux30;
.log ON
SAVEPOINT sp6089;
ATTACH DATABASE '' || (':memory:') AS aux56;
CREATE TABLE main.t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT);
INSERT INTO t1 VALUES (strftime('%s', format('%d', 1)), ('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
PRAGMA ignore_check_constraints = 0;
DETACH DATABASE aux56;
INSERT INTO t1 SELECT * FROM t1;
PRAGMA recursive_triggers = OFF;
CREATE TRIGGER IF NOT EXISTS trg_t1_1212 AFTER UPDATE OF c ON t1 BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
RELEASE sp6089;
CREATE TRIGGER IF NOT EXISTS trg_t1_4991 BEFORE UPDATE OF a ON t1 FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'abort'); END;
INSERT INTO t1 VALUES (1, 'x', 'x', 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
ALTER TABLE t1 ADD COLUMN extra_6256 CLOB DEFAULT '';
WITH RECURSIVE cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<1) SELECT * FROM cnt;
CREATE TABLE T1 (
A VARCHAR(20),
X VARCHAR(10),
PRIMARY KEY (A, X),
UNIQUE (X)
);
CREATE TABLE T2 (
A VARCHAR(20),
Y VARCHAR(10) UNIQUE,
PRIMARY KEY (A, Y)
);
INSERT INTO T1 VALUES ('a', 'm');
INSERT INTO T1 VALUES ('b', 'n');
INSERT INTO T2 VALUES ('b', 'k');
SELECT A FROM T1 UNION ALL SELECT A FROM T2 ORDER BY A;
SELECT * FROM t1 NATURAL JOIN t1;
ALTER TABLE t1 RENAME COLUMN d TO d_r9145;
INSERT AND FAIL INTO t1 VALUES ('x', 'x', '', -7);
INSERT INTO t1 VALUES (NULL, NULL, NULL, NULL);
UPDATE t1 SET d = d + 1 RETURNING *;
WITH RECURSIVE fib(a,b) AS (VALUES(1,1) UNION ALL SELECT b, a+b FROM fib WHERE b<1000) SELECT a FROM fib;
SELECT COUNT(*) FILTER (WHERE b IS NOT NULL), SUM(rowid) FILTER (WHERE b > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(b) FILTER (WHERE b > 0 AND b < 100), COUNT(*) FILTER (WHERE typeof(b) = "text") FROM t1;
INSERT INTO T1 VALUES ('x', 'x') ON CONFLICT(A) DO UPDATE SET A = excluded.A, X = excluded.X;
ALTER TABLE T1 DROP COLUMN A;
CREATE TEMP VIEW IF NOT EXISTS v_t1_7233 AS SELECT c FROM t1;
DETACH DATABASE aux30;
UPDATE T1 SET A = A + 1 WHERE rowid = 1;
INSERT INTO T1 SELECT * FROM T1;
CREATE TRIGGER IF NOT EXISTS trg_t1_9997 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
DELETE FROM T1 WHERE 0;
INSERT INTO t1 DEFAULT VALUES;
ALTER TABLE T2 RENAME TO T2_r5714;
DELETE FROM T2 WHERE 1;
SELECT * FROM T2 WHERE Y > ALL (SELECT Y FROM T2);
SELECT * FROM T2;
ALTER TABLE T1 ADD COLUMN extra_1823 FLOAT UNIQUE;
WITH RECURSIVE fib(a,b,n) AS (VALUES(1,1,1) UNION ALL SELECT b, a+b, n+1 FROM fib WHERE n<95) SELECT a, n FROM fib;
SELECT COUNT(*) FROM T1;
CREATE TABLE T (
A VARCHAR(20),
B VARCHAR(10),
PRIMARY KEY (A, B)
);
INSERT INTO T VALUES ('a', 'p');
INSERT INTO T VALUES ('a', 'q');
INSERT INTO T VALUES ('b', 'q');
INSERT INTO T VALUES ('c', 'r');
INSERT INTO T VALUES ('b', 'r');
INSERT INTO T VALUES ('b', 't');
SELECT B, COUNT(DISTINCT A) AS D FROM T GROUP BY B ORDER BY D DESC, B ASC;
ALTER TABLE T DROP COLUMN b;
INSERT INTO T1 DEFAULT VALUES;
SELECT COUNT(A) FILTER (WHERE A IS NOT NULL) OVER (PARTITION BY A ORDER BY A ROWS BETWEEN 2 PRECEDING AND 2 FOLLOWING EXCLUDE CURRENT ROW) FROM T2;
INSERT INTO t1 VALUES ('x', 'x', 1, 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
ALTER TABLE t1 DROP COLUMN b;
INSERT OR FAIL INTO T2 VALUES ('x', -9);
REINDEX;
REINDEX;
SELECT LAG(b, 0) OVER (ORDER BY b RANGE BETWEEN 1 PRECEDING AND 1 FOLLOWING) FROM T;
SELECT SUM(Y) FROM T2;
UPDATE T SET A = NULL WHERE 1;
DELETE FROM t1 WHERE c > (SELECT AVG(c) FROM t1);
SELECT COUNT(*) FILTER (WHERE c IS NOT NULL), SUM(rowid) FILTER (WHERE c > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(c) FILTER (WHERE c > 0 AND c < 100), COUNT(*) FILTER (WHERE typeof(c) = "text") FROM t1;
.eqp auto
CREATE TABLE T (
a TEXT,
b REAL
);
INSERT INTO T VALUES ('a',abs(json_valid(9223372036854775806, 6))), ('b',-200.5), ('c',9e999);
SELECT a,b,
LEAD(b,1) OVER (ORDER BY b DESC) AS c,
NTILE(2) OVER (ORDER BY b DESC) AS d FROM T;
PRAGMA short_column_names = NO;
PRAGMA cell_size_check;
.parameter
ATTACH DATABASE ':memory:' AS aux30;
.log ON
SAVEPOINT sp6089;
ATTACH DATABASE '' || (':memory:') AS aux56;
CREATE TABLE main.t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT);
INSERT INTO t1 VALUES (strftime('%s', format('%d', 1)), ('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
PRAGMA ignore_check_constraints = 0;
DETACH DATABASE aux56;
INSERT INTO t1 SELECT * FROM t1;
PRAGMA recursive_triggers = OFF;
CREATE TRIGGER IF NOT EXISTS trg_t1_1212 AFTER UPDATE OF c ON t1 BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
RELEASE sp6089;
CREATE TRIGGER IF NOT EXISTS trg_t1_4991 BEFORE UPDATE OF a ON t1 FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'abort'); END;
INSERT INTO t1 VALUES (1, 'x', 'x', 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
ALTER TABLE t1 ADD COLUMN extra_6256 CLOB DEFAULT '';
WITH RECURSIVE cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<1) SELECT * FROM cnt;
CREATE TABLE T1 (
A VARCHAR(20),
X VARCHAR(10),
PRIMARY KEY (A, X),
UNIQUE (X)
);
CREATE TABLE T2 (
A VARCHAR(20),
Y VARCHAR(10) UNIQUE,
PRIMARY KEY (A, Y)
);
INSERT INTO T1 VALUES ('a', 'm');
INSERT INTO T1 VALUES ('b', 'n');
INSERT INTO T2 VALUES ('b', 'k');
SELECT A FROM T1 UNION ALL SELECT A FROM T2 ORDER BY A;
SELECT * FROM t1 NATURAL JOIN t1;
ALTER TABLE t1 RENAME COLUMN d TO d_r9145;
INSERT AND FAIL INTO t1 VALUES ('x', 'x', '', -7);
INSERT INTO t1 VALUES (NULL, NULL, NULL, NULL);
UPDATE t1 SET d = d + 1 RETURNING *;
WITH RECURSIVE fib(a,b) AS (VALUES(1,1) UNION ALL SELECT b, a+b FROM fib WHERE b<1000) SELECT a FROM fib;
SELECT COUNT(*) FILTER (WHERE b IS NOT NULL), SUM(rowid) FILTER (WHERE b > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(b) FILTER (WHERE b > 0 AND b < 100), COUNT(*) FILTER (WHERE typeof(b) = "text") FROM t1;
INSERT INTO T1 VALUES ('x', 'x') ON CONFLICT(A) DO UPDATE SET A = excluded.A, X = excluded.X;
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;
ALTER TABLE T1 DROP COLUMN A;
CREATE TEMP VIEW IF NOT EXISTS v_t1_7233 AS SELECT c FROM t1;
DETACH DATABASE aux30;
UPDATE T1 SET A = A + 1 WHERE rowid = 1;
INSERT INTO T1 SELECT * FROM T1;
CREATE TRIGGER IF NOT EXISTS trg_t1_9997 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
DELETE FROM T1 WHERE 0;
INSERT INTO t1 DEFAULT VALUES;
ALTER TABLE T2 RENAME TO T2_r5714;
DELETE FROM T2 WHERE 1;
SELECT * FROM T2 WHERE Y > ALL (SELECT Y FROM T2);
SELECT * FROM T2;
ALTER TABLE T1 ADD COLUMN extra_1823 FLOAT UNIQUE;
WITH RECURSIVE fib(a,b,n) AS (VALUES(1,1,1) UNION ALL SELECT b, a+b, n+1 FROM fib WHERE n<95) SELECT a, n FROM fib;
SELECT COUNT(*) FROM T1;
CREATE TABLE T (
A VARCHAR(20),
B VARCHAR(10),
PRIMARY KEY (A, B)
);
INSERT INTO T VALUES ('a', 'p');
INSERT INTO T VALUES ('a', 'q');
INSERT INTO T VALUES ('b', 'q');
INSERT INTO T VALUES ('c', 'r');
INSERT INTO T VALUES ('b', 'r');
INSERT INTO T VALUES ('b', 't');
SELECT B, COUNT(DISTINCT A) AS D FROM T GROUP BY B ORDER BY D DESC, B ASC;
ALTER TABLE T DROP COLUMN b;
INSERT INTO T1 DEFAULT VALUES;
SELECT COUNT(A) FILTER (WHERE A IS NOT NULL) OVER (PARTITION BY A ORDER BY A ROWS BETWEEN 2 PRECEDING AND 2 FOLLOWING EXCLUDE CURRENT ROW) FROM T2;
INSERT INTO t1 VALUES ('x', 'x', 1, 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
ALTER TABLE t1 DROP COLUMN b;
INSERT OR FAIL INTO T2 VALUES ('x', -9);
REINDEX;
REINDEX;
SELECT LAG(b, 0) OVER (ORDER BY b RANGE BETWEEN 1 PRECEDING AND 1 FOLLOWING) FROM T;
SELECT SUM(Y) FROM T2;
UPDATE T SET A = NULL WHERE 1;
DELETE FROM t1 WHERE c > (SELECT AVG(c) FROM t1);
SELECT COUNT(*) FILTER (WHERE c IS NOT NULL), SUM(rowid) FILTER (WHERE c > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(c) FILTER (WHERE c > 0 AND c < 100), COUNT(*) FILTER (WHERE typeof(c) = "text") FROM t1;
ROLLBACK TO sp2208;
RELEASE sp2208;
SELECT COUNT(*) FILTER (WHERE X IS NOT NULL), SUM(rowid) FILTER (WHERE X > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(X) FILTER (WHERE X > 0 AND X < 100), COUNT(*) FILTER (WHERE typeof(X) = "text") FROM T1;
INSERT INTO T1 DEFAULT VALUES;
SELECT COUNT(*) FILTER (WHERE b IS NOT NULL), SUM(rowid) FILTER (WHERE b > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(b) FILTER (WHERE b > 0 AND b < 100), COUNT(*) FILTER (WHERE typeof(b) = "text") FROM T1;
SELECT b, COUNT(*) FROM T2 GROUP BY b HAVING COUNT(*) = (SELECT COUNT(*) FROM T2);
ALTER TABLE T1 ADD COLUMN extra_4051 DECIMAL(10,5) DEFAULT NULL;
VACUUM;
SELECT COUNT(*) FROM T2;
CREATE TRIGGER IF NOT EXISTS trg_t1_3933 AFTER DELETE ON t1 FOR EACH ROW BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
INSERT INTO T VALUES (NULL, NULL);
CREATE TABLE T (
a INTEGER,
b REAL
);
INSERT INTO T VALUES (1,1.5), (2,-7.25), (3,0.0);
SELECT a,b FROM T WHERE a >= 2 ORDER BY b;
VACUUM main;
INSERT OR ABORT INTO T VALUES (-1, 0);
ALTER TABLE t1 RENAME TO t1_r5175;
CREATE TRIGGER IF NOT EXISTS trg_t1_8911 AFTER UPDATE ON t1 BEGIN SELECT RAISE(FAIL, 'no'); END;
INSERT INTO T1 SELECT * FROM T1;
ALTER TABLE T1 ADD COLUMN extra_2551 CHAR(10) COLLATE NOCASE;
SELECT COUNT(*) FROM T1;
CREATE TRIGGER IF NOT EXISTS trg_T2_1955 BEFORE UPDATE OF a ON T2 FOR EACH ROW BEGIN INSERT INTO T2(a) VALUES (NULL); END;
```
## Actual output
```sql
0
.parameter CMD ... Manage SQL parameter bindings
clear Erase all bindings
init Initialize the TEMP table that holds bindings
list List the current parameter bindings
set PARAMETER VALUE Given SQL parameter PARAMETER a value of VALUE
PARAMETER should start with one of: $ : @ ?
unset PARAMETER Remove PARAMETER from the binding table
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|-210866673600
von|20|2
Braun|30
Wernher|10
von|20
```
## Expectation
```sql
```
## Flag
```
```