mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
a549befb6d
Archive uses native row format, so honestly this is just the change in a flag. sql/ha_archive.h: Added bit field support (and dropped the ha_not_exact_count since we always have this). mysql-test/r/archive_bitfield.result: New BitKeeper file ``mysql-test/r/archive_bitfield.result'' mysql-test/t/archive_bitfield.test: New BitKeeper file ``mysql-test/t/archive_bitfield.test''
191 lines
4.3 KiB
Text
191 lines
4.3 KiB
Text
drop table if exists t1;
|
|
create table t1 (
|
|
pk1 int not null auto_increment primary key,
|
|
b bit(64)
|
|
) engine=archive;
|
|
show create table t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`pk1` int(11) NOT NULL auto_increment,
|
|
`b` bit(64) default NULL,
|
|
PRIMARY KEY (`pk1`)
|
|
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1
|
|
insert into t1 values
|
|
(NULL,b'1111111111111111111111111111111111111111111111111111111111111111'),
|
|
(NULL,b'1000000000000000000000000000000000000000000000000000000000000000'),
|
|
(NULL,b'0000000000000000000000000000000000000000000000000000000000000001'),
|
|
(NULL,b'1010101010101010101010101010101010101010101010101010101010101010'),
|
|
(NULL,b'0101010101010101010101010101010101010101010101010101010101010101');
|
|
select hex(b) from t1 order by pk1;
|
|
hex(b)
|
|
FFFFFFFFFFFFFFFF
|
|
8000000000000000
|
|
1
|
|
AAAAAAAAAAAAAAAA
|
|
5555555555555555
|
|
drop table t1;
|
|
create table t1 (
|
|
pk1 int not null auto_increment primary key,
|
|
b bit(9)
|
|
) engine=archive;
|
|
insert into t1 values
|
|
(NULL,b'000000000'),
|
|
(NULL,b'000000001'),
|
|
(NULL,b'000000010'),
|
|
(NULL,b'000000011'),
|
|
(NULL,b'000000100');
|
|
select hex(b) from t1 order by pk1;
|
|
hex(b)
|
|
0
|
|
1
|
|
2
|
|
3
|
|
4
|
|
drop table t1;
|
|
create table t1 (a bit(7), b bit(9)) engine = archive;
|
|
insert into t1 values
|
|
(94, 46), (31, 438), (61, 152), (78, 123), (88, 411), (122, 118), (0, 177),
|
|
(75, 42), (108, 67), (79, 349), (59, 188), (68, 206), (49, 345), (118, 380),
|
|
(111, 368), (94, 468), (56, 379), (77, 133), (29, 399), (9, 363), (23, 36),
|
|
(116, 390), (119, 368), (87, 351), (123, 411), (24, 398), (34, 202), (28, 499),
|
|
(30, 83), (5, 178), (60, 343), (4, 245), (104, 280), (106, 446), (127, 403),
|
|
(44, 307), (68, 454), (57, 135);
|
|
select a+0 from t1 order by a;
|
|
a+0
|
|
0
|
|
4
|
|
5
|
|
9
|
|
23
|
|
24
|
|
28
|
|
29
|
|
30
|
|
31
|
|
34
|
|
44
|
|
49
|
|
56
|
|
57
|
|
59
|
|
60
|
|
61
|
|
68
|
|
68
|
|
75
|
|
77
|
|
78
|
|
79
|
|
87
|
|
88
|
|
94
|
|
94
|
|
104
|
|
106
|
|
108
|
|
111
|
|
116
|
|
118
|
|
119
|
|
122
|
|
123
|
|
127
|
|
select b+0 from t1 order by b;
|
|
b+0
|
|
36
|
|
42
|
|
46
|
|
67
|
|
83
|
|
118
|
|
123
|
|
133
|
|
135
|
|
152
|
|
177
|
|
178
|
|
188
|
|
202
|
|
206
|
|
245
|
|
280
|
|
307
|
|
343
|
|
345
|
|
349
|
|
351
|
|
363
|
|
368
|
|
368
|
|
379
|
|
380
|
|
390
|
|
398
|
|
399
|
|
403
|
|
411
|
|
411
|
|
438
|
|
446
|
|
454
|
|
468
|
|
499
|
|
drop table t1;
|
|
create table t1 (
|
|
dummyKey INTEGER NOT NULL AUTO_INCREMENT,
|
|
a001 TINYINT,
|
|
a010 TINYINT,
|
|
a012 TINYINT,
|
|
a015 TINYINT,
|
|
a016 TINYINT,
|
|
a017 TINYINT,
|
|
a019 TINYINT,
|
|
a029 TINYINT,
|
|
a030 TINYINT,
|
|
a031 TINYINT,
|
|
a032 TINYINT,
|
|
a042 TINYINT,
|
|
a043 TINYINT,
|
|
a044 TINYINT,
|
|
a3001 TINYINT,
|
|
a3002 TINYINT,
|
|
a3003 TINYINT,
|
|
a3004 TINYINT,
|
|
a3005 TINYINT,
|
|
a3021 TINYINT,
|
|
a3022 TINYINT,
|
|
a BIT(6),
|
|
b BIT(6),
|
|
c BIT(6),
|
|
d TINYINT,
|
|
e TINYINT,
|
|
f TINYINT,
|
|
g TINYINT,
|
|
h TINYINT,
|
|
i TINYINT,
|
|
j TINYINT,
|
|
k TINYINT,
|
|
l TINYINT,
|
|
m TINYINT,
|
|
n TINYINT,
|
|
o TINYINT,
|
|
a034 TINYINT,
|
|
PRIMARY KEY USING HASH (dummyKey) ) engine=archive;
|
|
INSERT INTO `t1` VALUES
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000001',b'111111',b'111110',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000010',b'000000',b'111101',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000100',b'001111',b'111011',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'001000',b'110000',b'110111',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'010000',b'100001',b'101111',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'100000',b'010010',b'011111',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'000000',b'001100',b'111111',4,5,5,5,5,5,5,5,5,5,3,2,1),
|
|
(NULL,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,b'111111',b'000000',b'000000',4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (1,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x01,0x3F,0x3E,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (2,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x02,0x00,0x3D,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (3,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x04,0x0F,0x3B,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (4,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x08,0x30,0x37,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (5,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x10,0x21,0x2F,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (6,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x20,0x12,0x1F,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (7,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x00,0x0C,0x3F,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
INSERT INTO `t1` VALUES (8,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x3F,0x00,0x00,4,5,5,5,5,5,5,5,5,5,3,2,1);
|
|
drop table t1;
|