1#
2# BOOLEAN column type
3#
4
5--disable_warnings
6DROP TABLE IF EXISTS t1;
7--enable_warnings
8
9eval CREATE TABLE t1 (
10  pk INT AUTO_INCREMENT PRIMARY KEY,
11  b1 BOOL $extra_col_opts,
12  b2 BOOLEAN $extra_col_opts
13) ENGINE=rocksdb;
14
15SHOW COLUMNS IN t1;
16
17# Valid values
18
19INSERT INTO t1 (b1,b2) VALUES (1,TRUE);
20SELECT b1,b2 FROM t1;
21
22INSERT INTO t1 (b1,b2) VALUES (FALSE,0);
23--sorted_result
24SELECT b1,b2 FROM t1;
25
26INSERT INTO t1 (b1,b2) VALUES (2,3);
27--sorted_result
28SELECT b1,b2 FROM t1;
29
30INSERT INTO t1 (b1,b2) VALUES (-1,-2);
31--sorted_result
32SELECT b1,b2 FROM t1;
33
34--sorted_result
35SELECT IF(b1,'true','false') AS a, IF(b2,'true','false') AS b FROM t1;
36
37--sorted_result
38SELECT b1,b2 FROM t1 WHERE b1 = TRUE;
39
40--sorted_result
41SELECT b1,b2 FROM t1 WHERE b2 = FALSE;
42
43# Invalid values
44
45INSERT INTO t1 (b1,b2) VALUES ('a','b');
46--sorted_result
47SELECT b1,b2 FROM t1;
48
49INSERT INTO t1 (b1,b2) VALUES (128,-129);
50--sorted_result
51SELECT b1,b2 FROM t1;
52
53# This is why we don't have zerofill and unsigned tests
54# for boolean columns:
55--error ER_PARSE_ERROR
56eval ALTER TABLE t1 ADD COLUMN b3 BOOLEAN UNSIGNED $extra_col_opts;
57
58--error ER_PARSE_ERROR
59eval ALTER TABLE ADD COLUMN b3 BOOL ZEROFILL $extra_col_opts;
60
61DROP TABLE t1;
62
63
64
65