~drizzle-trunk/drizzle/development

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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
drop table if exists t1,t2;
drop table if exists t1aa,t2aa;
drop database if exists mysqltest;
drop database if exists mysqltest1;
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);
-- Here we enable metadata just to check that the collation of the
-- resultset is non-binary for string type. This should be changed
-- after Bug#29394 is implemented.
check table t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	8	512	7	Y	0	31	45
def					Op	8	40	5	Y	0	31	45
def					Msg_type	8	40	6	Y	0	31	45
def					Msg_text	8	1020	2	Y	0	31	45
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
insert into t1 values (5,5,5);
check table t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	8	512	7	Y	0	31	45
def					Op	8	40	5	Y	0	31	45
def					Msg_type	8	40	6	Y	0	31	45
def					Msg_text	8	1020	2	Y	0	31	45
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
show index from t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	show_indexes	show_indexes	Table	Table	8	256	2	N	1	0	45
def	data_dictionary	show_indexes	show_indexes	Unique	Unique	8	20	5	N	1	0	45
def	data_dictionary	show_indexes	show_indexes	Key_name	Key_name	8	256	7	N	1	0	45
def	data_dictionary	show_indexes	show_indexes	Seq_in_index	Seq_in_index	5	20	1	N	32769	0	63
def	data_dictionary	show_indexes	show_indexes	Column_name	Column_name	8	256	1	N	1	0	45
Table	Unique	Key_name	Seq_in_index	Column_name
t1	TRUE	PRIMARY	1	a
t1	FALSE	b	1	b
t1	FALSE	b	2	c
insert into t1 values (5,5,5);
ERROR 23000: Duplicate entry '5' for key 'PRIMARY'
-- Here we enable metadata just to check that the collation of the
-- resultset is non-binary for string type. This should be changed
-- after Bug#29394 is implemented.
alter table t1 engine="default";
alter table t1 engine="default";
drop table t1;
-- Here we enable metadata just to check that the collation of the
-- resultset is non-binary for string type. This should be changed
-- after Bug#29394 is implemented.
show variables like "server_id%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	session_variables	SESSION_VARIABLES	VARIABLE_NAME	Variable_name	8	256	9	N	1	0	45
def	data_dictionary	session_variables	SESSION_VARIABLES	VARIABLE_VALUE	Value	8	4096	1	N	1	0	45
Variable_name	Value
server_id	1
show variables like "SERVER_id%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	session_variables	SESSION_VARIABLES	VARIABLE_NAME	Variable_name	8	256	9	N	1	0	45
def	data_dictionary	session_variables	SESSION_VARIABLES	VARIABLE_VALUE	Value	8	4096	1	N	1	0	45
Variable_name	Value
server_id	1
show variables like "this_doesn't_exists%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	session_variables	SESSION_VARIABLES	VARIABLE_NAME	Variable_name	8	256	0	N	1	0	45
def	data_dictionary	session_variables	SESSION_VARIABLES	VARIABLE_VALUE	Value	8	4096	0	N	1	0	45
Variable_name	Value
show table status from test like "this_doesn't_exists%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Session	Session	5	20	0	N	32769	0	63
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Schema	Schema	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Name	Name	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Type	Type	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Engine	Engine	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Version	Version	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Rows	Rows	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Avg_row_length	Avg_row_length	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Table_size	Table_size	8	256	0	N	1	0	45
def	data_dictionary	show_table_status	SHOW_TABLE_STATUS	Auto_increment	Auto_increment	8	256	0	N	1	0	45
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
show databases;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	schema_names	SCHEMA_NAMES	SCHEMA_NAME	Database	8	256	18	N	1	0	45
Database
data_dictionary
information_schema
mysql
test
show databases like "test%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	schema_names	SCHEMA_NAMES	SCHEMA_NAME	Database (test%)	8	256	4	N	1	0	45
Database (test%)
test
create table t1 (f1 int not null, f2 int not null, f3 int not null, f4 int not null, primary key(f1,f2,f3,f4));
insert into t1 values (1,1,1,0),(1,1,2,0),(1,1,3,0),(1,2,1,0),(1,2,2,0),(1,2,3,0),(1,3,1,0),(1,3,2,0),(1,3,3,0),(1,1,1,1),(1,1,2,1),(1,1,3,1),(1,2,1,1),(1,2,2,1),(1,2,3,1),(1,3,1,1),(1,3,2,1),(1,3,3,1);
-- Here we enable metadata just to check that the collation of the
-- resultset is non-binary for string type. This should be changed
-- after Bug#29394 is implemented.
analyze table t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	8	512	7	Y	0	31	45
def					Op	8	40	7	Y	0	31	45
def					Msg_type	8	40	6	Y	0	31	45
def					Msg_text	8	1020	2	Y	0	31	45
Table	Op	Msg_type	Msg_text
test.t1	analyze	status	OK
show index from t1;
Table	Unique	Key_name	Seq_in_index	Column_name
t1	TRUE	PRIMARY	1	f1
t1	TRUE	PRIMARY	2	f2
t1	TRUE	PRIMARY	3	f3
t1	TRUE	PRIMARY	4	f4
show index from t1;
Table	Unique	Key_name	Seq_in_index	Column_name
t1	TRUE	PRIMARY	1	f1
t1	TRUE	PRIMARY	2	f2
t1	TRUE	PRIMARY	3	f3
t1	TRUE	PRIMARY	4	f4
drop table t1;
create temporary table t1 (a int not null);
show create table t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `a` int NOT NULL
) ENGINE=DEFAULT
alter table t1 rename t2;
show create table t2;
Table	Create Table
t2	CREATE TEMPORARY TABLE `t2` (
  `a` int NOT NULL
) ENGINE=DEFAULT
drop table t2;
create table t1 (
name char(20) default 'O''Brien' comment 'O''Brien as default',
c int not null comment 'int column',
`c-b` int comment 'name with a minus',
`space 2` int comment 'name with a space'
  ) comment = 'it\'s a table' ;
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `name` varchar(20) DEFAULT 'O''Brien' COMMENT 'O''Brien as default',
  `c` int NOT NULL COMMENT 'int column',
  `c-b` int DEFAULT NULL COMMENT 'name with a minus',
  `space 2` int DEFAULT NULL COMMENT 'name with a space'
) ENGINE=DEFAULT COMMENT='it''s a table'
show columns from t1;
Field	Type	Null	Default	Default_is_NULL	On_Update
name	VARCHAR	TRUE	O'Brien	FALSE	
c	INTEGER	FALSE	O'Brien	FALSE	
c-b	INTEGER	TRUE	O'Brien	TRUE	
space 2	INTEGER	TRUE	O'Brien	TRUE	
drop table t1;
create table t1 (a int not null, unique aa (a));
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int NOT NULL,
  UNIQUE KEY `aa` (`a`)
) ENGINE=DEFAULT
drop table t1;
create table t1 (a int not null, primary key (a));
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` int NOT NULL,
  PRIMARY KEY (`a`)
) ENGINE=DEFAULT
drop table t1;
create temporary table t1 (a int not null, b VARCHAR(10), INDEX (b) ) COMMENT="test" ENGINE=MYISAM ROW_FORMAT=fixed;
show create table t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `a` int NOT NULL,
  `b` varchar(10) DEFAULT NULL,
  KEY `b` (`b`)
) ENGINE=MyISAM ROW_FORMAT=FIXED COMMENT='test'
alter table t1 ROW_FORMAT=dynamic;
show create table t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `a` int NOT NULL,
  `b` varchar(10) DEFAULT NULL,
  KEY `b` (`b`)
) ENGINE=MyISAM ROW_FORMAT=DYNAMIC COMMENT='test'
ALTER TABLE t1 COMMENT="" ROW_FORMAT=default;
show create table t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `a` int NOT NULL,
  `b` varchar(10) DEFAULT NULL,
  KEY `b` (`b`)
) ENGINE=MyISAM
drop table t1;
create table t1 (a decimal(9,2), b decimal (9,0), e double(9,2), f double(5,0), h float(3,2), i float(3,0));
show columns from t1;
Field	Type	Null	Default	Default_is_NULL	On_Update
a	DECIMAL	TRUE		TRUE	
b	DECIMAL	TRUE		TRUE	
e	DOUBLE	TRUE		TRUE	
f	DOUBLE	TRUE		TRUE	
h	DOUBLE	TRUE		TRUE	
i	DOUBLE	TRUE		TRUE	
show columns from t1;
Field	Type	Null	Default	Default_is_NULL	On_Update
a	DECIMAL	TRUE		TRUE	
b	DECIMAL	TRUE		TRUE	
e	DOUBLE	TRUE		TRUE	
f	DOUBLE	TRUE		TRUE	
h	DOUBLE	TRUE		TRUE	
i	DOUBLE	TRUE		TRUE	
drop table t1;
create temporary table t1 (
type_int int,
type_bigint bigint,
type_decimal decimal(5,2),
type_numeric numeric(5,2),
empty_char char(0),
type_char char(2),
type_varchar varchar(10),
type_timestamp timestamp not null,
type_date date,
type_datetime datetime,
type_enum enum ('red', 'green', 'blue'),
type_set enum ('red', 'green', 'blue'),
type_blob blob,
index(type_int)
) COMMENT="test" ENGINE=MYISAM ROW_FORMAT=fixed;
show create table t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `type_int` int DEFAULT NULL,
  `type_bigint` bigint DEFAULT NULL,
  `type_decimal` decimal(5,2) DEFAULT NULL,
  `type_numeric` decimal(5,2) DEFAULT NULL,
  `empty_char` varchar(0) DEFAULT NULL,
  `type_char` varchar(2) DEFAULT NULL,
  `type_varchar` varchar(10) DEFAULT NULL,
  `type_timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `type_date` date DEFAULT NULL,
  `type_datetime` datetime DEFAULT NULL,
  `type_enum` enum('red','green','blue') DEFAULT NULL,
  `type_set` enum('red','green','blue') DEFAULT NULL,
  `type_blob` blob,
  KEY `type_int` (`type_int`)
) ENGINE=MyISAM ROW_FORMAT=FIXED COMMENT='test'
insert into t1 (type_timestamp) values ("2003-02-07 10:00:01");
select * from t1;
type_int	type_bigint	type_decimal	type_numeric	empty_char	type_char	type_varchar	type_timestamp	type_date	type_datetime	type_enum	type_set	type_blob
NULL	NULL	NULL	NULL	NULL	NULL	NULL	2003-02-07 10:00:01	NULL	NULL	NULL	NULL	NULL
drop table t1;
create table t1 (a int not null);
create table t2 select max(a) from t1;
show columns from t2;
Field	Type	Null	Default	Default_is_NULL	On_Update
max(a)	INTEGER	TRUE		TRUE	
drop table t1,t2;
create table t1 (c decimal, d double, f float, r real);
show columns from t1;
Field	Type	Null	Default	Default_is_NULL	On_Update
c	DECIMAL	TRUE		TRUE	
d	DOUBLE	TRUE		TRUE	
f	DOUBLE	TRUE		TRUE	
r	DOUBLE	TRUE		TRUE	
drop table t1;
create table t1 (c decimal(3,3), d double(3,3), f float(3,3));
show columns from t1;
Field	Type	Null	Default	Default_is_NULL	On_Update
c	DECIMAL	TRUE		TRUE	
d	DOUBLE	TRUE		TRUE	
f	DOUBLE	TRUE		TRUE	
drop table t1;
CREATE TABLE ```ab``cd``` (i INT);
SHOW CREATE TABLE ```ab``cd```;
Table	Create Table
`ab`cd`	CREATE TABLE ```ab``cd``` (
  `i` int DEFAULT NULL
) ENGINE=DEFAULT
DROP TABLE ```ab``cd```;
CREATE TABLE ```ab````cd``` (i INT);
SHOW CREATE TABLE ```ab````cd```;
Table	Create Table
`ab``cd`	CREATE TABLE ```ab````cd``` (
  `i` int DEFAULT NULL
) ENGINE=DEFAULT
DROP TABLE ```ab````cd```;
CREATE TABLE ```a` (i INT);
SHOW CREATE TABLE ```a`;
Table	Create Table
`a	CREATE TABLE ```a` (
  `i` int DEFAULT NULL
) ENGINE=DEFAULT
DROP TABLE ```a`;
CREATE TABLE `a.1` (i INT);
SHOW CREATE TABLE `a.1`;
Table	Create Table
a.1	CREATE TABLE `a.1` (
  `i` int DEFAULT NULL
) ENGINE=DEFAULT
DROP TABLE `a.1`;
select @@max_heap_table_size;
@@max_heap_table_size
1048576
CREATE TEMPORARY TABLE t1 (
a int default NULL,
KEY a USING BTREE (a)
) ENGINE=MEMORY;
CREATE TEMPORARY TABLE t2 (
b int default NULL,
index(b)
) ENGINE=MEMORY;
CREATE TEMPORARY TABLE t3 (
a int default NULL,
b int default NULL,
KEY a USING BTREE (a),
index(b)
) ENGINE=MEMORY;
insert into t1 values (1),(2);
insert into t2 values (1),(2);
insert into t3 values (1,1),(2,2);
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
insert into t1 values (3),(4);
insert into t2 values (3),(4);
insert into t3 values (3,3),(4,4);
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
insert into t1 values (5);
insert into t2 values (5);
insert into t3 values (5,5);
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
delete from t1 where a=3;
delete from t2 where b=3;
delete from t3 where a=3;
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
truncate table t1;
truncate table t2;
truncate table t3;
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
insert into t1 values (5);
insert into t2 values (5);
insert into t3 values (5,5);
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
delete from t1 where a=5;
delete from t2 where b=5;
delete from t3 where a=5;
show table status;
Session	Schema	Name	Type	Engine	Version	Rows	Avg_row_length	Table_size	Auto_increment
#	test	t1	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t2	TEMPORARY	MEMORY	#	#	#	#	#
#	test	t3	TEMPORARY	MEMORY	#	#	#	#	#
drop table t1, t2, t3;
CREATE TEMPORARY TABLE t1 (i int, KEY (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`)
) ENGINE=MEMORY
DROP TABLE t1;
CREATE TEMPORARY TABLE t1 (i int, KEY USING HASH (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`) USING HASH
) ENGINE=MEMORY
DROP TABLE t1;
CREATE TEMPORARY TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`) USING BTREE
) ENGINE=MEMORY
DROP TABLE t1;
CREATE TEMPORARY TABLE t1 (i int, KEY (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`)
) ENGINE=MyISAM
DROP TABLE t1;
CREATE TEMPORARY TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`) USING BTREE
) ENGINE=MyISAM
DROP TABLE t1;
CREATE TEMPORARY TABLE t1 (i int, KEY (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`)
) ENGINE=MyISAM
ALTER TABLE t1 ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`)
) ENGINE=MEMORY
DROP TABLE t1;
CREATE TEMPORARY TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`) USING BTREE
) ENGINE=MyISAM
ALTER TABLE t1 ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TEMPORARY TABLE `t1` (
  `i` int DEFAULT NULL,
  KEY `i` (`i`) USING BTREE
) ENGINE=MEMORY
DROP TABLE t1;
CREATE TABLE t1(
field1 text NOT NULL,
PRIMARY KEY(field1(180))
);
show index from t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def	data_dictionary	show_indexes	show_indexes	Table	Table	8	256	2	N	1	0	45
def	data_dictionary	show_indexes	show_indexes	Unique	Unique	8	20	4	N	1	0	45
def	data_dictionary	show_indexes	show_indexes	Key_name	Key_name	8	256	7	N	1	0	45
def	data_dictionary	show_indexes	show_indexes	Seq_in_index	Seq_in_index	5	20	1	N	32769	0	63
def	data_dictionary	show_indexes	show_indexes	Column_name	Column_name	8	256	6	N	1	0	45
Table	Unique	Key_name	Seq_in_index	Column_name
t1	TRUE	PRIMARY	1	field1
drop table t1;
create table t1 (
c1 int NOT NULL,
c2 int NOT NULL,
PRIMARY KEY USING HASH (c1),
INDEX USING BTREE(c2)
);
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `c1` int NOT NULL,
  `c2` int NOT NULL,
  PRIMARY KEY (`c1`) USING HASH,
  KEY `c2` (`c2`) USING BTREE
) ENGINE=DEFAULT
DROP TABLE t1;
SHOW TABLES FROM non_existing_database;
ERROR 42000: Unknown database 'non_existing_database'
End of 4.1 tests
SHOW TABLES FROM no_such_database;
ERROR 42000: Unknown database 'no_such_database'
SHOW COLUMNS FROM no_such_table;
ERROR 42S02: Table 'test.no_such_table' doesn't exist
show variables like 'myisam_recover_options';
Variable_name	Value
End of 5.0 tests
create database `mysqlttest\1`;
create table `mysqlttest\1`.`a\b` (a int);
show tables from `mysqlttest\1`;
Tables_in_mysqlttest\1
a\b
show fields from `mysqlttest\1`.`a\b`;
Field	Type	Null	Default	Default_is_NULL	On_Update
a	INTEGER	TRUE		TRUE	
show columns from `a\b` from `mysqlttest\1`;
Field	Type	Null	Default	Default_is_NULL	On_Update
a	INTEGER	TRUE		TRUE	
show keys from `mysqlttest\1`.`a\b`;
Table	Unique	Key_name	Seq_in_index	Column_name
drop table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`;
drop table if exists `été`;
create table `été` (field1 int);
show tables;
Tables_in_test
été
drop table `été`;
show columns from `#mysql50#????????`;
Got one of the listed errors
End of 5.1 tests