/
niceSOFT
/
sqlite
Обзор
Документация
Войти
/
niceSOFT
/
sqlite
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
version-3.50.1
test/changes.test
88 строк
2 KB
drh
Add string_agg(X,Y) as an alias for group_concat(X,Y), for compatibility
20 окт 2023, 23:19
20 окт 2023, 23:19
d5e040b
Код
Авторство
О чём код?
# 2021 June 22 # # The author disclaims copyright to this source code. In place of # a legal notice, here is a blessing: # # May you do good and not evil. # May you find forgiveness for yourself and forgive others. # May you share freely, never taking more than you give. # #*********************************************************************** # # Tests for the sqlite3_changes() and sqlite3_total_changes() APIs. # set testdir [file dirname $argv0] source $testdir/tester.tcl set testprefix changes # To test that the change-counters do not suffer from 32-bit signed integer # rollover, add the following line to the array of test cases below. The # test will take will over an hour to run. # # 7 (1<<31)+10 "" # foreach {tn nRow wor} { 1 50 "" 2 50 "WITHOUT ROWID" 3 5000 "" 4 5000 "WITHOUT ROWID" 5 50000 "" 6 50000 "WITHOUT ROWID" } { reset_db set nBig [expr $nRow] do_execsql_test 1.$tn.0 " PRAGMA journal_mode = off; CREATE TABLE t1(x INTEGER PRIMARY KEY) $wor; " {off} do_execsql_test 1.$tn.1 { WITH s(i) AS ( SELECT 1 UNION ALL SELECT i+1 FROM s WHERE i < $nBig ) INSERT INTO t1 SELECT i FROM s; } do_test 1.$tn.2 { db changes } [expr $nBig] do_test 1.$tn.3 { db total_changes } [expr $nBig] do_execsql_test 1.$tn.4 { INSERT INTO t1 VALUES(-1) } do_test 1.$tn.5 { db changes } [expr 1] do_test 1.$tn.6 { db total_changes } [expr {$nBig+1}] do_execsql_test 1.$tn.7a { SELECT count(*) FROM t1 } [expr {$nBig+1}] do_execsql_test 1.$tn.7 { DELETE FROM t1 } do_test 1.$tn.8 { db changes } [expr {$nBig+1}] do_test 1.$tn.9 { db total_changes } [expr {2*($nBig+1)}] } finish_test