---
This commit is contained in:
@@ -0,0 +1,108 @@
|
||||
## 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
|
||||
ATTACH DATABASE ':memory:' AS aux3;
|
||||
BEGIN DEFERRED;
|
||||
SAVEPOINT sp7959;
|
||||
CREATE TABLE T1 (
|
||||
A VARCHAR(abs(123.456)),
|
||||
X VARCHAR(10),
|
||||
PRIMARY KEY (A, X)
|
||||
);
|
||||
CREATE TABLE T2 (
|
||||
A VARCHAR(20),
|
||||
Y VARCHAR(10),
|
||||
PRIMARY KEY (A, Y)
|
||||
);
|
||||
INSERT INTO T1 VALUES ('' || ('a'), 'm');
|
||||
INSERT INTO T1 VALUES ('b', 'n');
|
||||
INSERT INTO T1 VALUES ('c', 'o');
|
||||
INSERT INTO T2 VALUES ('b', 'k');
|
||||
SELECT A FROM T1 EXCEPT SELECT A FROM T2;
|
||||
CREATE TABLE T (
|
||||
a INTEGER,
|
||||
b TEXT,
|
||||
c REAL
|
||||
);
|
||||
INSERT INTO T VALUES (1,'a',1.25), (2,'b',-3.5), (3,'c',0.0);
|
||||
SELEct * FROM T WHERE +c < 2.0 ORDER BY c;
|
||||
PRAGMA count_changes = ON;
|
||||
ATTACH DATABASE ':memory:' AS aux74;
|
||||
BEGIN IMMEDIATE;
|
||||
.dump main
|
||||
CREATE TABLE T (
|
||||
A VARCHAR(10) PRIMARY KEY,
|
||||
B VARCHAR(15),
|
||||
C BIGINT,
|
||||
UNIQUE (B, C)
|
||||
);
|
||||
INSERT INTO T VALUES ('a', 'p', -9223372036854775808);
|
||||
INSERT /* DOUB */ INTO T VALUES ('b', 'q', 4000);
|
||||
INSERT INTO T VALUES ('c', 'r', 1700);
|
||||
INSERT INTO T VALUES ('d', 'r', 9223372036854775807);
|
||||
INSERT INTO T VALUES ('e', 's', 0);
|
||||
SELECT A, C FROM T WHERE C > 1200 AND C < 9999999999 ORDER BY C;
|
||||
DELETE FROM T WHERE 1 RETURNING *;
|
||||
INSERT INTO T VALUES (NULL, NULL, NULL);
|
||||
WITH cte AS (SELECT 1 AS x) SELECT x + 0.5 FROM cte;
|
||||
INSERT INTO T VALUES (NULL, NULL, NULL);
|
||||
SELECT * FROM T;
|
||||
DROP INDEX IF EXISTS T;
|
||||
VACUUM main;
|
||||
SELECT STRING_AGG(C, '|') FROM T;
|
||||
INSERT INTO T VALUES (1, NULL, 'x') ON CONFLICT(A) DO UPDATE SET A = excluded.A, B = excluded.B, C = excluded.C;
|
||||
SELECT CUME_DIST() OVER (PARTITION BY C ORDER BY C ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW EXCLUDE TIES) FROM T;
|
||||
ALTER TABLE T ADD COLUMN extra_1863 CHARINT;
|
||||
REINDEX;
|
||||
ANALYZE T;
|
||||
COMMIT TRANSACTION;
|
||||
DETACH DATABASE aux74;
|
||||
DROP VIEW IF EXISTS T;
|
||||
PRAGMA query_only = NO;
|
||||
REINDEX T;
|
||||
INSERT INTO T VALUES (1, 'x', 'x') ON CONFLICT(A) DO UPDATE SET A = excluded.A, B = excluded.B, C = excluded.C;
|
||||
CREATE TRIGGER IF NOT EXISTS trg_T_2628 AFTER DELETE ON T FOR EACH ROW BEGIN SELECT RAISE(FAIL, 'no'); END;
|
||||
INSERT OR FAIL INTO T VALUES ('', 0, 'x');
|
||||
CREATE TEMPORARY VIEW IF NOT EXISTS v_T_6833 AS SELECT B FROM T;
|
||||
|
||||
SELECT COUNT(*) FROM T;
|
||||
ROLLBACK TRANSACTION TO SAVEPOINT sp7959;
|
||||
RELEASE SAVEPOINT sp7959;
|
||||
SELECT * FROM T2 WHERE A IN (SELECT ALL A FROM T2);
|
||||
WITH RECURSIVE fib(a,b,n) AS (VALUES(1,1,1) UNION ALL SELECT b, a+b, n+1 FROM fib WHERE n<30) SELECT a, n FROM fib;
|
||||
ROLLBACK;
|
||||
INSERT INTO T1 DEFAULT VALUES;
|
||||
DETACH DATABASE aux3;
|
||||
ANALYZE;
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS idx_T_2635 ON T(C);
|
||||
ALTER TABLE T1 DROP COLUMN A;
|
||||
WITH cte AS (SELECT NULL AS x) SELECT * FROM cte;
|
||||
INSERT INTO T SELECT * FROM T;
|
||||
PRAGMA synchronous;
|
||||
PRAGMA vdbe_addoptrace = TRUE;
|
||||
WITH RECURSIVE cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<1) SELECT * FROM cnt;
|
||||
ALTER TABLE T2 RENAME COLUMN A TO A_r5627;
|
||||
INSERT OR ABORT INTO T VALUES (0, '', 'x');
|
||||
```
|
||||
|
||||
## Actual output
|
||||
|
||||
```sql
|
||||
3.39.0 2022-05-10 23:28:12 764b71267e0b31ff7eaf2a0def7526a1a02dce4d5b456dea060d97ed342ealt1
|
||||
```
|
||||
|
||||
## Expectation
|
||||
|
||||
```sql
|
||||
3.51.1 2025-11-28 17:28:25 281fc0e9afc38674b9b0991943b9e9d1e64c6cbdb133d35f6f5c87ff6af38a88 (64-bit)
|
||||
```
|
||||
|
||||
## Flag
|
||||
|
||||
```
|
||||
-version
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user