mirror of
https://github.com/sqlite/sqlite.git
synced 2026-10-25 09:59:22 +03:00
as originally envisioned, so abandon it on a branch. FossilOrigin-Name: 80889306bf57b886a248b880bc90197b8975a666
89 lines
2.9 KiB
Plaintext
89 lines
2.9 KiB
Plaintext
# 2015-06-02
|
|
#
|
|
# 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.
|
|
#
|
|
#***********************************************************************
|
|
# This file implements regression tests for SQLite library. The
|
|
# focus of this file is type affinity and the affinity() built-in
|
|
# function.
|
|
#
|
|
|
|
set testdir [file dirname $argv0]
|
|
source $testdir/tester.tcl
|
|
set ::testprefix affinity1
|
|
|
|
do_execsql_test 100 {
|
|
CREATE TABLE t1(
|
|
c01 INT,
|
|
c02 INTEGER,
|
|
c03 TINYINT,
|
|
c04 SMALLINT,
|
|
c05 MEDIUMINT,
|
|
c06 BIGINT,
|
|
c07 UNSIGNED BIG INT,
|
|
c08 INT2,
|
|
c09 INT4,
|
|
c10 CHARACTER(20),
|
|
c11 VARCHAR(255),
|
|
c12 VARYING CHARACTER(255),
|
|
c13 NCHAR(55),
|
|
c14 NATIVE CHARACTER(70),
|
|
c15 NVARCHAR(100),
|
|
c16 TEXT,
|
|
c17 CLOB,
|
|
c20 BLOB,
|
|
c21,
|
|
c30 REAL,
|
|
c31 DOUBLE,
|
|
c32 DOUBLE PRECISION,
|
|
c33 FLOAT,
|
|
c40 NUMERIC,
|
|
c41 DECIMAL(10,5),
|
|
c42 BOOLEAN,
|
|
c43 DATE,
|
|
c44 DATETIME,
|
|
c50 FLOATING POINT,
|
|
c60 STRING
|
|
);
|
|
INSERT INTO t1 DEFAULT VALUES;
|
|
} {}
|
|
do_execsql_test 201 {
|
|
SELECT affinity(c01), affinity(c01+1), affinity(+c01) FROM t1;
|
|
} {INTEGER {} {}}
|
|
do_execsql_test 202 {SELECT affinity(c02) FROM t1} {INTEGER}
|
|
do_execsql_test 203 {SELECT affinity(c03) FROM t1} {INTEGER}
|
|
do_execsql_test 204 {SELECT affinity(c04) FROM t1} {INTEGER}
|
|
do_execsql_test 205 {SELECT affinity(c05) FROM t1} {INTEGER}
|
|
do_execsql_test 206 {SELECT affinity(c06) FROM t1} {INTEGER}
|
|
do_execsql_test 207 {SELECT affinity(c07) FROM t1} {INTEGER}
|
|
do_execsql_test 208 {SELECT affinity(c08) FROM t1} {INTEGER}
|
|
do_execsql_test 209 {SELECT affinity(c09) FROM t1} {INTEGER}
|
|
do_execsql_test 210 {SELECT affinity(c10) FROM t1} {TEXT}
|
|
do_execsql_test 211 {SELECT affinity(c11) FROM t1} {TEXT}
|
|
do_execsql_test 212 {SELECT affinity(c12) FROM t1} {TEXT}
|
|
do_execsql_test 213 {SELECT affinity(c13) FROM t1} {TEXT}
|
|
do_execsql_test 214 {SELECT affinity(c14) FROM t1} {TEXT}
|
|
do_execsql_test 215 {SELECT affinity(c15) FROM t1} {TEXT}
|
|
do_execsql_test 216 {SELECT affinity(c16) FROM t1} {TEXT}
|
|
do_execsql_test 220 {SELECT affinity(c20) FROM t1} {BLOB}
|
|
do_execsql_test 221 {SELECT affinity(c21) FROM t1} {BLOB}
|
|
do_execsql_test 230 {SELECT affinity(c30) FROM t1} {REAL}
|
|
do_execsql_test 231 {SELECT affinity(c31) FROM t1} {REAL}
|
|
do_execsql_test 232 {SELECT affinity(c32) FROM t1} {REAL}
|
|
do_execsql_test 233 {SELECT affinity(c33) FROM t1} {REAL}
|
|
do_execsql_test 240 {SELECT affinity(c40) FROM t1} {NUMERIC}
|
|
do_execsql_test 241 {SELECT affinity(c41) FROM t1} {NUMERIC}
|
|
do_execsql_test 242 {SELECT affinity(c42) FROM t1} {NUMERIC}
|
|
do_execsql_test 243 {SELECT affinity(c43) FROM t1} {NUMERIC}
|
|
do_execsql_test 244 {SELECT affinity(c44) FROM t1} {NUMERIC}
|
|
do_execsql_test 250 {SELECT affinity(c50) FROM t1} {INTEGER}
|
|
do_execsql_test 260 {SELECT affinity(c60) FROM t1} {NUMERIC}
|
|
|
|
|
|
finish_test
|