~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
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
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 fast;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	5	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	27	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	check	status	Table is already up to date
check table t1 fast;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	5	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	27	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	check	status	Table is already up to date
check table t1 changed;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	5	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
insert into t1 values (5,5,5);
check table t1 changed;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	5	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
check table t1 medium;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	5	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
check table t1 extended;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	5	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
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			STATISTICS	TABLE_NAME	Table	253	64	2	N	1	0	8
def			STATISTICS	NON_UNIQUE	Non_unique	8	1	1	N	32769	0	63
def			STATISTICS	INDEX_NAME	Key_name	253	64	7	N	1	0	8
def			STATISTICS	SEQ_IN_INDEX	Seq_in_index	8	2	1	N	32769	0	63
def			STATISTICS	COLUMN_NAME	Column_name	253	64	1	N	1	0	8
def			STATISTICS	COLLATION	Collation	253	1	1	Y	0	0	8
def			STATISTICS	CARDINALITY	Cardinality	8	21	1	Y	32768	0	63
def			STATISTICS	SUB_PART	Sub_part	8	3	0	Y	32768	0	63
def			STATISTICS	PACKED	Packed	253	10	0	Y	0	0	8
def			STATISTICS	NULLABLE	Null	253	3	0	N	1	0	8
def			STATISTICS	INDEX_TYPE	Index_type	253	16	5	N	1	0	8
def			STATISTICS	COMMENT	Comment	253	16	0	Y	0	0	8
def			STATISTICS	INDEX_COMMENT	Index_Comment	253	1024	0	N	1	0	8
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment	Index_Comment
t1	0	PRIMARY	1	a	A	5	NULL	NULL		BTREE		
t1	1	b	1	b	A	1	NULL	NULL		BTREE		
t1	1	b	2	c	A	5	NULL	NULL		BTREE		
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.
optimize table t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	8	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	optimize	status	OK
optimize table t1;
Table	Op	Msg_type	Msg_text
test.t1	optimize	status	Table is already up to date
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 "wait_timeout%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def			VARIABLES	VARIABLE_NAME	Variable_name	253	64	12	N	1	0	8
def			VARIABLES	VARIABLE_VALUE	Value	253	16300	5	Y	0	0	8
Variable_name	Value
wait_timeout	28800
show variables like "WAIT_timeout%";
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def			VARIABLES	VARIABLE_NAME	Variable_name	253	64	12	N	1	0	8
def			VARIABLES	VARIABLE_VALUE	Value	253	16300	5	Y	0	0	8
Variable_name	Value
wait_timeout	28800
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			VARIABLES	VARIABLE_NAME	Variable_name	253	64	0	N	1	0	8
def			VARIABLES	VARIABLE_VALUE	Value	253	16300	0	Y	0	0	8
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			TABLES	TABLE_NAME	Name	253	64	0	N	1	0	8
def			TABLES	ENGINE	Engine	253	64	0	Y	0	0	8
def			TABLES	VERSION	Version	8	21	0	Y	32800	0	63
def			TABLES	ROW_FORMAT	Row_format	253	10	0	Y	0	0	8
def			TABLES	TABLE_ROWS	Rows	8	21	0	Y	32800	0	63
def			TABLES	AVG_ROW_LENGTH	Avg_row_length	8	21	0	Y	32800	0	63
def			TABLES	DATA_LENGTH	Data_length	8	21	0	Y	32800	0	63
def			TABLES	MAX_DATA_LENGTH	Max_data_length	8	21	0	Y	32800	0	63
def			TABLES	INDEX_LENGTH	Index_length	8	21	0	Y	32800	0	63
def			TABLES	DATA_FREE	Data_free	8	21	0	Y	32800	0	63
def			TABLES	AUTO_INCREMENT	Auto_increment	8	21	0	Y	32800	0	63
def			TABLES	CREATE_TIME	Create_time	12	19	0	Y	128	0	63
def			TABLES	UPDATE_TIME	Update_time	12	19	0	Y	128	0	63
def			TABLES	CHECK_TIME	Check_time	12	19	0	Y	128	0	63
def			TABLES	TABLE_COLLATION	Collation	253	64	0	Y	0	0	8
def			TABLES	CHECKSUM	Checksum	8	21	0	Y	32800	0	63
def			TABLES	CREATE_OPTIONS	Create_options	253	255	0	Y	0	0	8
def			TABLES	TABLE_COMMENT	Comment	253	2048	0	N	1	0	8
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
show databases;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def			SCHEMATA	SCHEMA_NAME	Database	253	64	18	N	1	0	8
Database
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			SCHEMATA	SCHEMA_NAME	Database (test%)	253	64	4	N	1	0	8
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	253	128	7	Y	0	31	8
def					Op	253	10	7	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	analyze	status	OK
show index from t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment	Index_Comment
t1	0	PRIMARY	1	f1	A	1	NULL	NULL		BTREE		
t1	0	PRIMARY	2	f2	A	3	NULL	NULL		BTREE		
t1	0	PRIMARY	3	f3	A	9	NULL	NULL		BTREE		
t1	0	PRIMARY	4	f4	A	18	NULL	NULL		BTREE		
-- 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.
repair table t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def					Table	253	128	7	Y	0	31	8
def					Op	253	10	6	Y	0	31	8
def					Msg_type	253	10	6	Y	0	31	8
def					Msg_text	253	255	2	Y	0	31	8
Table	Op	Msg_type	Msg_text
test.t1	repair	status	OK
show index from t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment	Index_Comment
t1	0	PRIMARY	1	f1	A	1	NULL	NULL		BTREE		
t1	0	PRIMARY	2	f2	A	3	NULL	NULL		BTREE		
t1	0	PRIMARY	3	f3	A	9	NULL	NULL		BTREE		
t1	0	PRIMARY	4	f4	A	18	NULL	NULL		BTREE		
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(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t1 rename t2;
show create table t2;
Table	Create Table
t2	CREATE TEMPORARY TABLE "t2" (
  "a" int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t2;
create table t1 (
test_set set( 'val1', 'val2', 'val3' ) not null default '',
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" (
  "test_set" set('val1','val2','val3') NOT NULL,
  "name" char(20) COMMENT 'O''Brien as default',
  "c" int(11) NOT NULL COMMENT 'int column',
  "c-b" int(11) COMMENT 'name with a minus',
  "space 2" int(11) COMMENT 'name with a space'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='it''s a table'
set sql_quote_show_create=0;
show create table t1;
Table	Create Table
t1	CREATE TABLE t1 (
  test_set set('val1','val2','val3') NOT NULL,
  "name" char(20) COMMENT 'O''Brien as default',
  c int(11) NOT NULL COMMENT 'int column',
  "c-b" int(11) COMMENT 'name with a minus',
  "space 2" int(11) COMMENT 'name with a space'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='it''s a table'
set sql_quote_show_create=1;
show full columns from t1;
Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
test_set	set('val1','val2','val3')	latin1_swedish_ci	NO		NULL			
name	char(20)	latin1_swedish_ci	YES		NULL			O'Brien as default
c	int(11)	NULL	NO		NULL			int column
c-b	int(11)	NULL	YES		NULL			name with a minus
space 2	int(11)	NULL	YES		NULL			name with a space
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(11) NOT NULL,
  UNIQUE KEY "aa" ("a")
) ENGINE=MyISAM DEFAULT CHARSET=latin1
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(11) NOT NULL,
  PRIMARY KEY ("a")
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
flush tables;
show open tables;
Database	Table	In_use	Name_locked
mysql	general_log	0	0
create table t1(n int);
insert into t1 values (1);
show open tables;
Database	Table	In_use	Name_locked
test	t1	0	0
mysql	general_log	0	0
drop table t1;
create table t1 (a int not null, b VARCHAR(10), INDEX (b) ) AVG_ROW_LENGTH=10 CHECKSUM=1 COMMENT="test" ENGINE=MYISAM MIN_ROWS=10 MAX_ROWS=100 PACK_KEYS=1 DELAY_KEY_WRITE=1 ROW_FORMAT=fixed;
show create table t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "a" int(11) NOT NULL,
  "b" varchar(10),
  KEY "b" ("b")
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MIN_ROWS=10 MAX_ROWS=100 AVG_ROW_LENGTH=10 PACK_KEYS=1 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=FIXED COMMENT='test'
alter table t1 MAX_ROWS=200 ROW_FORMAT=dynamic PACK_KEYS=0;
show create table t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "a" int(11) NOT NULL,
  "b" varchar(10),
  KEY "b" ("b")
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MIN_ROWS=10 MAX_ROWS=200 AVG_ROW_LENGTH=10 PACK_KEYS=0 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC COMMENT='test'
ALTER TABLE t1 AVG_ROW_LENGTH=0 CHECKSUM=0 COMMENT="" MIN_ROWS=0 MAX_ROWS=0 PACK_KEYS=DEFAULT DELAY_KEY_WRITE=0 ROW_FORMAT=default;
show create table t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "a" int(11) NOT NULL,
  "b" varchar(10),
  KEY "b" ("b")
) ENGINE=MyISAM DEFAULT CHARSET=latin1
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	Key	Default	Extra
a	decimal(9,2)	YES		NULL	
b	decimal(9,0)	YES		NULL	
e	double(9,2)	YES		NULL	
f	double(5,0)	YES		NULL	
h	float(3,2)	YES		NULL	
i	float(3,0)	YES		NULL	
show full columns from t1;
Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
a	decimal(9,2)	NULL	YES		NULL			
b	decimal(9,0)	NULL	YES		NULL			
e	double(9,2)	NULL	YES		NULL			
f	double(5,0)	NULL	YES		NULL			
h	float(3,2)	NULL	YES		NULL			
i	float(3,0)	NULL	YES		NULL			
drop table t1;
create table t1 (
type_bool bool not null default 0,
type_tiny tinyint not null auto_increment primary key,
type_short smallint(3),
type_mediumint mediumint,
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 not null default '0000-00-00',
type_time time not null default '00:00:00',
type_datetime datetime not null default '0000-00-00 00:00:00',
type_year year,
type_enum enum ('red', 'green', 'blue'),
type_set enum ('red', 'green', 'blue'),
type_tinyblob tinyblob,
type_blob blob,
type_medium_blob mediumblob,
type_long_blob longblob,
index(type_short)
) AVG_ROW_LENGTH=10 CHECKSUM=1 COMMENT="test" ENGINE=MYISAM MIN_ROWS=10 MAX_ROWS=100 PACK_KEYS=1 DELAY_KEY_WRITE=1 ROW_FORMAT=fixed CHARSET=latin1;
show create table t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "type_bool" tinyint(1) NOT NULL,
  "type_tiny" tinyint(4) NOT NULL AUTO_INCREMENT,
  "type_short" smallint(3),
  "type_mediumint" mediumint(9),
  "type_bigint" bigint(20),
  "type_decimal" decimal(5,2),
  "type_numeric" decimal(5,2),
  "empty_char" char(0),
  "type_char" char(2),
  "type_varchar" varchar(10),
  "type_timestamp" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  "type_date" date NOT NULL,
  "type_time" time NOT NULL,
  "type_datetime" datetime NOT NULL,
  "type_year" year(4),
  "type_enum" enum('red','green','blue'),
  "type_set" enum('red','green','blue'),
  "type_tinyblob" tinyblob,
  "type_blob" blob,
  "type_medium_blob" mediumblob,
  "type_long_blob" longblob,
  PRIMARY KEY ("type_tiny"),
  KEY "type_short" ("type_short")
) ENGINE=MyISAM DEFAULT CHARSET=latin1 MIN_ROWS=10 MAX_ROWS=100 AVG_ROW_LENGTH=10 PACK_KEYS=1 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=FIXED COMMENT='test'
insert into t1 (type_timestamp) values ("2003-02-07 10:00:01");
select * from t1;
type_bool	type_tiny	type_short	type_mediumint	type_bigint	type_decimal	type_numeric	empty_char	type_char	type_varchar	type_timestamp	type_date	type_time	type_datetime	type_year	type_enum	type_set	type_tinyblob	type_blob	type_medium_blob	type_long_blob
0	1	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	2003-02-07 10:00:01	0000-00-00	00:00:00	0000-00-00 00:00:00	NULL	NULL	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	Key	Default	Extra
max(a)	int(11)	YES		NULL	
drop table t1,t2;
create table t1 (c decimal, d double, f float, r real);
show columns from t1;
Field	Type	Null	Key	Default	Extra
c	decimal(10,0)	YES		NULL	
d	double	YES		NULL	
f	float	YES		NULL	
r	double	YES		NULL	
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	Key	Default	Extra
c	decimal(3,3)	YES		NULL	
d	double(3,3)	YES		NULL	
f	float(3,3)	YES		NULL	
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(11)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
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(11)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE ```ab````cd```;
CREATE TABLE ```a` (i INT);
SHOW CREATE TABLE ```a`;
Table	Create Table
`a	CREATE TABLE "`a" (
  "i" int(11)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
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(11)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE `a.1`;
select @@max_heap_table_size;
@@max_heap_table_size
1048576
CREATE TABLE t1 (
a int(11) default NULL,
KEY a USING BTREE (a)
) ENGINE=HEAP;
CREATE TABLE t2 (
b int(11) default NULL,
index(b)
) ENGINE=HEAP;
CREATE TABLE t3 (
a int(11) default NULL,
b int(11) default NULL,
KEY a USING BTREE (a),
index(b)
) ENGINE=HEAP;
insert into t1 values (1),(2);
insert into t2 values (1),(2);
insert into t3 values (1,1),(2,2);
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	2	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	2	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	2	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
insert into t1 values (3),(4);
insert into t2 values (3),(4);
insert into t3 values (3,3),(4,4);
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	4	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	4	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	4	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
insert into t1 values (5);
insert into t2 values (5);
insert into t3 values (5,5);
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	5	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	5	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	5	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
delete from t1 where a=3;
delete from t2 where b=3;
delete from t3 where a=3;
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	4	#	#	#	#	#	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	4	#	#	#	#	#	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	4	#	#	#	#	#	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
truncate table t1;
truncate table t2;
truncate table t3;
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	0	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	0	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	0	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
insert into t1 values (5);
insert into t2 values (5);
insert into t3 values (5,5);
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	1	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	1	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	1	#	#	#	#	0	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
delete from t1 where a=5;
delete from t2 where b=5;
delete from t3 where a=5;
show table status;
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	MEMORY	10	Fixed	0	#	#	#	#	#	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t2	MEMORY	10	Fixed	0	#	#	#	#	#	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
t3	MEMORY	10	Fixed	0	#	#	#	#	#	NULL	NULL	NULL	NULL	latin1_swedish_ci	NULL		
drop table t1, t2, t3;
CREATE TABLE t1 (i int, KEY (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i")
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY USING HASH (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i") USING HASH
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i") USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i")
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i") USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i")
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i")
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1 (i int, KEY USING BTREE (i)) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i") USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 ENGINE=MEMORY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE "t1" (
  "i" int(11),
  KEY "i" ("i") USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=latin1
DROP TABLE t1;
CREATE TABLE t1(
field1 text NOT NULL,
PRIMARY KEY(field1(1000))
);
show index from t1;
Catalog	Database	Table	Table_alias	Column	Column_alias	Type	Length	Max length	Is_null	Flags	Decimals	Charsetnr
def			STATISTICS	TABLE_NAME	Table	253	64	2	N	1	0	8
def			STATISTICS	NON_UNIQUE	Non_unique	8	1	1	N	32769	0	63
def			STATISTICS	INDEX_NAME	Key_name	253	64	7	N	1	0	8
def			STATISTICS	SEQ_IN_INDEX	Seq_in_index	8	2	1	N	32769	0	63
def			STATISTICS	COLUMN_NAME	Column_name	253	64	6	N	1	0	8
def			STATISTICS	COLLATION	Collation	253	1	1	Y	0	0	8
def			STATISTICS	CARDINALITY	Cardinality	8	21	1	Y	32768	0	63
def			STATISTICS	SUB_PART	Sub_part	8	3	4	Y	32768	0	63
def			STATISTICS	PACKED	Packed	253	10	0	Y	0	0	8
def			STATISTICS	NULLABLE	Null	253	3	0	N	1	0	8
def			STATISTICS	INDEX_TYPE	Index_type	253	16	5	N	1	0	8
def			STATISTICS	COMMENT	Comment	253	16	0	Y	0	0	8
def			STATISTICS	INDEX_COMMENT	Index_Comment	253	1024	0	N	1	0	8
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment	Index_Comment
t1	0	PRIMARY	1	field1	A	0	1000	NULL		BTREE		
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(11) NOT NULL,
  "c2" int(11) NOT NULL,
  PRIMARY KEY ("c1") USING HASH,
  KEY "c2" ("c2") USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
flush tables;
SHOW TABLE STATUS like 't1';
Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment
t1	NULL	NULL	NULL	NULL	#	#	#	#	NULL	NULL	NULL	NULL	NULL	NULL	NULL	NULL	Incorrect information in file: './test/t1.frm'
show create table t1;
ERROR HY000: Incorrect information in file: './test/t1.frm'
drop table if exists t1;

# Bug#12183: SHOW OPEN TABLES behavior doesn't match grammar.

DROP DATABASE IF EXISTS mysqltest1;
CREATE DATABASE mysqltest1;
use mysqltest1;

CREATE TABLE t1(a INT);
CREATE TABLE t2(a INT);

FLUSH TABLES;

SELECT 1 FROM t1;
1
SELECT 1 FROM t2;
1

SHOW OPEN TABLES FROM mysqltest1;
Database	Table	In_use	Name_locked
mysqltest1	t1	0	0
mysqltest1	t2	0	0

SHOW OPEN TABLES FROM mysqltest1 LIKE 'z%';
Database	Table	In_use	Name_locked

SHOW OPEN TABLES FROM mysqltest1 LIKE 't1%';
Database	Table	In_use	Name_locked
mysqltest1	t1	0	0

SHOW OPEN TABLES FROM mysqltest1 LIKE '%1%';
Database	Table	In_use	Name_locked
mysqltest1	t1	0	0

FLUSH TABLES;

DROP DATABASE mysqltest1;
use test;

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
flush status;
show variables like "log_queries_not_using_indexes";
Variable_name	Value
log_queries_not_using_indexes	ON
select 1 from information_schema.tables limit 1;
1
1
show status like 'slow_queries';
Variable_name	Value
Slow_queries	1
set global log_queries_not_using_indexes=OFF;
show variables like "log_queries_not_using_indexes";
Variable_name	Value
log_queries_not_using_indexes	OFF
select 1 from information_schema.tables limit 1;
1
1
show status like 'slow_queries';
Variable_name	Value
Slow_queries	1
set global log_queries_not_using_indexes=ON;
show variables like "log_queries_not_using_indexes";
Variable_name	Value
log_queries_not_using_indexes	ON
select 1 from information_schema.tables limit 1;
1
1
show status like 'slow_queries';
Variable_name	Value
Slow_queries	2
show variables like 'myisam_recover_options';
Variable_name	Value
myisam_recover_options	OFF
End of 5.0 tests
SHOW AUTHORS;
show plugins;
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	Key	Default	Extra
a	int(11)	YES		NULL	
show columns from `a\b` from `mysqlttest\1`;
Field	Type	Null	Key	Default	Extra
a	int(11)	YES		NULL	
show keys from `mysqlttest\1`.`a\b`;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment	Index_Comment
drop table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`;
show engine foobar status;
ERROR 42000: Unknown table engine 'foobar'
show engine foobar logs;
ERROR 42000: Unknown table engine 'foobar'
show engine foobar mutex;
ERROR 42000: Unknown table engine 'foobar'
show engine mutex status;
ERROR 42000: Unknown table engine 'mutex'
show engine csv status;
Type	Name	Status
show engine csv logs;
Type	Name	Status
show engine csv mutex;
Type	Name	Status
set names utf8;
drop table if exists `été`;
create table `été` (field1 int);
show full tables;
Tables_in_test	Table_type
été	BASE TABLE
drop table `été`;
set names latin1;
show columns from `#mysql50#????????`;
Got one of the listed errors
End of 5.1 tests