1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
--echo ---- Partitioning and text data type
--error ER_BLOB_FIELD_IN_PART_FUNC_ERROR
eval create table t1 (a text not null, primary key(a(767))) engine=$engine
partition by key (a) (
partition pa1 max_rows=20 min_rows=2,
partition pa2 max_rows=30 min_rows=3,
partition pa3 max_rows=30 min_rows=4,
partition pa4 max_rows=40 min_rows=2);
#show create table t1;
#insert into t1 values (repeat('a',1000)), ('b'), (repeat('a',500)), (repeat('b',64));
#select * from t1;
#select * from t1 where a='b';
#update t1 set a='bb' where a='b';
#delete from t1 where a='bb';
#select * from t1;
#drop table t1;
--error ER_BLOB_FIELD_IN_PART_FUNC_ERROR
eval create table t2 (a tinytext not null, primary key(a(767))) engine=$engine
partition by key (a) partitions 30;
--error ER_BLOB_FIELD_IN_PART_FUNC_ERROR
eval create table t2 (a mediumtext not null, primary key(a(767))) engine=$engine
partition by key (a) partitions 30;
--error ER_BLOB_FIELD_IN_PART_FUNC_ERROR
eval create table t2 (a longtext not null, primary key(a(767))) engine=$engine
partition by key (a) partitions 30;
#show create table t2;
#let $count=30;
#let $letter=0;
#--echo $count inserts;
#--disable_query_log
#while ($count)
#{
#eval insert into t2 values (repeat(char(ascii('a')+$letter),$count*$count));
#dec $count;
#inc $letter;
#}
#select count(*) from t2;
#select * from t2;
#drop table t2;
|