| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| set testdir [file dirname $argv0] |
| source $testdir/tester.tcl |
| |
| do_execsql_test without_rowid6-100 { |
| CREATE TABLE t1(a,b,c,d,e, PRIMARY KEY(a,b,c,a,b,c,d,a,b,c)) WITHOUT ROWID; |
| CREATE INDEX t1a ON t1(b, b); |
| WITH RECURSIVE |
| c(i) AS (VALUES(1) UNION ALL SELECT i+1 FROM c WHERE i<1000) |
| INSERT INTO t1(a,b,c,d,e) SELECT i, i+1000, printf('x%dy',i), 0, 0 FROM c; |
| ANALYZE; |
| } {} |
| do_execsql_test without_rowid6-110 { |
| SELECT c FROM t1 WHERE a=123; |
| } {x123y} |
| do_execsql_test without_rowid6-120 { |
| SELECT c FROM t1 WHERE b=1123; |
| } {x123y} |
| do_execsql_test without_rowid6-130 { |
| SELECT c FROM t1 ORDER BY a DESC LIMIT 5; |
| } {x1000y x999y x998y x997y x996y} |
| do_execsql_test without_rowid6-140 { |
| SELECT c FROM t1 ORDER BY b LIMIT 5; |
| } {x1y x2y x3y x4y x5y} |
| |
| |
| |
| |
| do_execsql_test without_rowid6-200 { |
| DROP TABLE IF EXISTS t1; |
| CREATE TABLE t1( |
| a UNIQUE, |
| b UNIQUE, |
| c UNIQUE, |
| PRIMARY KEY(b) |
| ) WITHOUT ROWID; |
| INSERT INTO t1(a,b,c) VALUES(1,8,3),(4,5,6),(7,2,9); |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {4 1} |
| do_execsql_test without_rowid6-210 { |
| EXPLAIN QUERY PLAN |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {/SEARCH TABLE t1 USING PRIMARY KEY .b>../} |
| do_execsql_test without_rowid6-220 { |
| PRAGMA index_list(t1); |
| } {/sqlite_autoindex_t1_2 1 pk/} |
| |
| do_execsql_test without_rowid6-300 { |
| DROP TABLE IF EXISTS t1; |
| CREATE TABLE t1( |
| a UNIQUE, |
| b PRIMARY KEY, |
| c UNIQUE, |
| UNIQUE(b) |
| ) WITHOUT ROWID; |
| INSERT INTO t1(a,b,c) VALUES(1,8,3),(4,5,6),(7,2,9); |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {4 1} |
| do_execsql_test without_rowid6-310 { |
| EXPLAIN QUERY PLAN |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {/SEARCH TABLE t1 USING PRIMARY KEY .b>../} |
| do_execsql_test without_rowid6-320 { |
| PRAGMA index_list(t1); |
| } {/sqlite_autoindex_t1_2 1 pk/} |
| |
| do_execsql_test without_rowid6-400 { |
| DROP TABLE IF EXISTS t1; |
| CREATE TABLE t1( |
| a UNIQUE, |
| b UNIQUE PRIMARY KEY, |
| c UNIQUE |
| ) WITHOUT ROWID; |
| INSERT INTO t1(a,b,c) VALUES(1,8,3),(4,5,6),(7,2,9); |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {4 1} |
| do_execsql_test without_rowid6-410 { |
| EXPLAIN QUERY PLAN |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {/SEARCH TABLE t1 USING PRIMARY KEY .b>../} |
| do_execsql_test without_rowid6-420 { |
| PRAGMA index_list(t1); |
| } {/sqlite_autoindex_t1_2 1 pk/} |
| |
| do_execsql_test without_rowid6-500 { |
| DROP TABLE IF EXISTS t1; |
| CREATE TABLE t1(a,b,c, |
| UNIQUE(b,c), |
| PRIMARY KEY(b,c) |
| ) WITHOUT ROWID; |
| INSERT INTO t1(a,b,c) VALUES(1,8,3),(4,5,6),(7,2,9); |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {4 1} |
| do_execsql_test without_rowid6-510 { |
| EXPLAIN QUERY PLAN |
| SELECT a FROM t1 WHERE b>3 ORDER BY b; |
| } {/SEARCH TABLE t1 USING PRIMARY KEY .b>../} |
| do_execsql_test without_rowid6-520 { |
| PRAGMA index_list(t1); |
| } {/sqlite_autoindex_t1_1 1 pk/} |
| |
| do_catchsql_test without_rowid6-600 { |
| CREATE TABLE t6(a,b,c,PRIMARY KEY(a,rowid,b))WITHOUT ROWID; |
| } {1 {no such column: rowid}} |
| |
| |
| finish_test |