summaryrefslogtreecommitdiff
path: root/mysql-test/t/isam.test
blob: fc2dbac439c1ed14806903ef27ac6371c7dfac24 (plain)
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
-- source include/have_isam.inc

--disable_warnings
drop table if exists t1,t2;
--enable_warnings

#
# Test possible problem with rows that are about 65535 bytes long
#

create table t1 (a tinyint not null auto_increment, b blob not null, primary key (a)) type=isam;

let $1=100;
disable_query_log;
while ($1)
{
  eval insert into t1 (b) values(repeat(char(65+$1),65540-$1));
  dec $1;
}
enable_query_log;
delete from t1 where (a & 1);
select sum(length(b)) from t1;
drop table t1;

#
# Test of auto_increment;  The test for BDB tables is in bdb.test
#

create table t1 (a int not null auto_increment,b int, primary key (a)) type=isam;
insert into t1 values (1,1),(NULL,2),(3,3),(NULL,4);
delete from t1 where a=4 or a=2;
insert into t1 values (NULL,4),(NULL,5),(6,6);
select * from t1;
delete from t1 where a=6;
#show table status like "t1";
replace t1 values (3,1);
replace t1 values (3,3);
ALTER TABLE t1 add c int;
insert into t1 values (NULL,6,6);
select * from t1;
drop table t1;

#
# Test of some CREATE TABLE's that should fail
#
--error 1121
create table t1 (a int,b text, index(a)) type=isam;
--error 1073
create table t1 (a int,b text, index(b)) type=isam;
--error 1075
create table t1 (ordid int(8) not null auto_increment, ord  varchar(50) not null, primary key (ord,ordid)) type=isam;
--error 1121
create table t1 (ordid int(8), unique (ordid)) type=isam;
drop table if exists t1;

#
# Test of some show commands
#

create table t1 (a int not null primary key, b int not null,c int not null, key(b,c));
insert into t1 values (1,2,2),(2,2,3),(3,2,4),(4,2,4);
create table t2 type=isam select * from t1;
optimize table t1;
check table t1,t2;
repair table t1,t2;
check table t2,t1;
lock tables t1 write;
check table t2,t1;
show columns from t1;
show full columns from t1;
show index from t1;
drop table t1,t2;