alter_table.result 19.6 KB
Newer Older
1
drop table if exists t1,t2;
unknown's avatar
unknown committed
2
drop database if exists mysqltest;
unknown's avatar
unknown committed
3 4 5 6 7 8 9
create table t1 (
col1 int not null auto_increment primary key,
col2 varchar(30) not null,
col3 varchar (20) not null,
col4 varchar(4) not null,
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
col6 int not null, to_be_deleted int);
10
insert into t1 values (2,4,3,5,"PENDING",1,7);
unknown's avatar
unknown committed
11 12
alter table t1
add column col4_5 varchar(20) not null after col4,
13 14 15 16 17 18 19
add column col7 varchar(30) not null after col5,
add column col8 datetime not null, drop column to_be_deleted,
change column col2 fourth varchar(30) not null after col3,
modify column col6 int not null first;
select * from t1;
col6	col1	col3	fourth	col4	col4_5	col5	col7	col8
1	2	3	4	5		PENDING		0000-00-00 00:00:00
unknown's avatar
unknown committed
20 21 22 23 24
drop table t1;
create table t1 (bandID MEDIUMINT UNSIGNED NOT NULL PRIMARY KEY, payoutID SMALLINT UNSIGNED NOT NULL);
insert into t1 (bandID,payoutID) VALUES (1,6),(2,6),(3,4),(4,9),(5,10),(6,1),(7,12),(8,12);
alter table t1 add column new_col int, order by payoutid,bandid;
select * from t1;
25 26 27 28 29 30 31 32 33
bandID	payoutID	new_col
6	1	NULL
3	4	NULL
1	6	NULL
2	6	NULL
4	9	NULL
5	10	NULL
7	12	NULL
8	12	NULL
unknown's avatar
unknown committed
34 35
alter table t1 order by bandid,payoutid;
select * from t1;
36 37 38 39 40 41 42 43 44
bandID	payoutID	new_col
1	6	NULL
2	6	NULL
3	4	NULL
4	9	NULL
5	10	NULL
6	1	NULL
7	12	NULL
8	12	NULL
unknown's avatar
unknown committed
45 46 47 48 49 50 51 52 53
drop table t1;
CREATE TABLE t1 (
GROUP_ID int(10) unsigned DEFAULT '0' NOT NULL,
LANG_ID smallint(5) unsigned DEFAULT '0' NOT NULL,
NAME varchar(80) DEFAULT '' NOT NULL,
PRIMARY KEY (GROUP_ID,LANG_ID),
KEY NAME (NAME));
ALTER TABLE t1 CHANGE NAME NAME CHAR(80) not null;
SHOW FULL COLUMNS FROM t1;
54
Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
55 56 57
GROUP_ID	int(10) unsigned	NULL	NO	PRI	0		#	
LANG_ID	smallint(5) unsigned	NULL	NO	PRI	0		#	
NAME	char(80)	latin1_swedish_ci	NO	MUL			#	
unknown's avatar
unknown committed
58 59 60 61 62
DROP TABLE t1;
create table t1 (n int);
insert into t1 values(9),(3),(12),(10);
alter table t1 order by n;
select * from t1;
63 64 65 66 67
n
3
9
10
12
unknown's avatar
unknown committed
68 69 70 71 72 73 74 75 76
drop table t1;
CREATE TABLE t1 (
id int(11) unsigned NOT NULL default '0',
category_id tinyint(4) unsigned NOT NULL default '0',
type_id tinyint(4) unsigned NOT NULL default '0',
body text NOT NULL,
user_id int(11) unsigned NOT NULL default '0',
status enum('new','old') NOT NULL default 'new',
PRIMARY KEY (id)
unknown's avatar
unknown committed
77
) ENGINE=MyISAM;
unknown's avatar
unknown committed
78 79
ALTER TABLE t1 ORDER BY t1.id, t1.status, t1.type_id, t1.user_id, t1.body;
DROP TABLE t1;
unknown's avatar
unknown committed
80
CREATE TABLE t1 (AnamneseId int(10) unsigned NOT NULL auto_increment,B BLOB,PRIMARY KEY (AnamneseId)) engine=myisam;
unknown's avatar
unknown committed
81 82 83 84 85
insert into t1 values (null,"hello");
LOCK TABLES t1 WRITE;
ALTER TABLE t1 ADD Column new_col int not null;
UNLOCK TABLES;
OPTIMIZE TABLE t1;
unknown's avatar
unknown committed
86 87
Table	Op	Msg_type	Msg_text
test.t1	optimize	status	OK
unknown's avatar
unknown committed
88
DROP TABLE t1;
unknown's avatar
unknown committed
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110
create table t1 (i int unsigned not null auto_increment primary key);
insert into t1 values (null),(null),(null),(null);
alter table t1 drop i,add i int unsigned not null auto_increment, drop primary key, add primary key (i);
select * from t1;
i
1
2
3
4
drop table t1;
create table t1 (name char(15));
insert into t1 (name) values ("current");
create database mysqltest;
create table mysqltest.t1 (name char(15));
insert into mysqltest.t1 (name) values ("mysqltest");
select * from t1;
name
current
select * from mysqltest.t1;
name
mysqltest
alter table t1 rename mysqltest.t1;
unknown's avatar
unknown committed
111
ERROR 42S01: Table 't1' already exists
unknown's avatar
unknown committed
112 113 114 115 116 117 118 119
select * from t1;
name
current
select * from mysqltest.t1;
name
mysqltest
drop table t1;
drop database mysqltest;
unknown's avatar
unknown committed
120 121 122 123 124 125 126
create table t1 (n1 int not null, n2 int, n3 int, n4 float,
unique(n1),
key (n1, n2, n3, n4),
key (n2, n3, n4, n1),
key (n3, n4, n1, n2),
key (n4, n1, n2, n3) );
alter table t1 disable keys;
127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
show keys from t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	n1	1	n1	A	0	NULL	NULL		BTREE	
t1	1	n1_2	1	n1	A	NULL	NULL	NULL		BTREE	disabled
t1	1	n1_2	2	n2	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n1_2	3	n3	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n1_2	4	n4	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n2	1	n2	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n2	2	n3	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n2	3	n4	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n2	4	n1	A	NULL	NULL	NULL		BTREE	disabled
t1	1	n3	1	n3	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n3	2	n4	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n3	3	n1	A	NULL	NULL	NULL		BTREE	disabled
t1	1	n3	4	n2	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n4	1	n4	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n4	2	n1	A	NULL	NULL	NULL		BTREE	disabled
t1	1	n4	3	n2	A	NULL	NULL	NULL	YES	BTREE	disabled
t1	1	n4	4	n3	A	NULL	NULL	NULL	YES	BTREE	disabled
unknown's avatar
unknown committed
146 147 148 149 150 151 152 153 154 155
insert into t1 values(10,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(9,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(8,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(7,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(6,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(5,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(4,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(3,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(2,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(1,RAND()*1000,RAND()*1000,RAND());
unknown's avatar
unknown committed
156
alter table t1 enable keys;
157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
show keys from t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	n1	1	n1	A	10	NULL	NULL		BTREE	
t1	1	n1_2	1	n1	A	10	NULL	NULL		BTREE	
t1	1	n1_2	2	n2	A	10	NULL	NULL	YES	BTREE	
t1	1	n1_2	3	n3	A	10	NULL	NULL	YES	BTREE	
t1	1	n1_2	4	n4	A	10	NULL	NULL	YES	BTREE	
t1	1	n2	1	n2	A	10	NULL	NULL	YES	BTREE	
t1	1	n2	2	n3	A	10	NULL	NULL	YES	BTREE	
t1	1	n2	3	n4	A	10	NULL	NULL	YES	BTREE	
t1	1	n2	4	n1	A	10	NULL	NULL		BTREE	
t1	1	n3	1	n3	A	10	NULL	NULL	YES	BTREE	
t1	1	n3	2	n4	A	10	NULL	NULL	YES	BTREE	
t1	1	n3	3	n1	A	10	NULL	NULL		BTREE	
t1	1	n3	4	n2	A	10	NULL	NULL	YES	BTREE	
t1	1	n4	1	n4	A	10	NULL	NULL	YES	BTREE	
t1	1	n4	2	n1	A	10	NULL	NULL		BTREE	
t1	1	n4	3	n2	A	10	NULL	NULL	YES	BTREE	
t1	1	n4	4	n3	A	10	NULL	NULL	YES	BTREE	
unknown's avatar
unknown committed
176 177
drop table t1;
create table t1 (i int unsigned not null auto_increment primary key);
178 179 180
alter table t1 rename t2;
alter table t2 rename t1, add c char(10) comment "no comment";
show columns from t1;
181
Field	Type	Null	Key	Default	Extra
182
i	int(10) unsigned	NO	PRI	NULL	auto_increment
183
c	char(10)	YES		NULL	
unknown's avatar
unknown committed
184
drop table t1;
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
create table t1 (a int, b int);
insert into t1 values(1,100), (2,100), (3, 100);
insert into t1 values(1,99), (2,99), (3, 99);
insert into t1 values(1,98), (2,98), (3, 98);
insert into t1 values(1,97), (2,97), (3, 97);
insert into t1 values(1,96), (2,96), (3, 96);
insert into t1 values(1,95), (2,95), (3, 95);
insert into t1 values(1,94), (2,94), (3, 94);
insert into t1 values(1,93), (2,93), (3, 93);
insert into t1 values(1,92), (2,92), (3, 92);
insert into t1 values(1,91), (2,91), (3, 91);
insert into t1 values(1,90), (2,90), (3, 90);
insert into t1 values(1,89), (2,89), (3, 89);
insert into t1 values(1,88), (2,88), (3, 88);
insert into t1 values(1,87), (2,87), (3, 87);
insert into t1 values(1,86), (2,86), (3, 86);
insert into t1 values(1,85), (2,85), (3, 85);
insert into t1 values(1,84), (2,84), (3, 84);
insert into t1 values(1,83), (2,83), (3, 83);
insert into t1 values(1,82), (2,82), (3, 82);
insert into t1 values(1,81), (2,81), (3, 81);
insert into t1 values(1,80), (2,80), (3, 80);
insert into t1 values(1,79), (2,79), (3, 79);
insert into t1 values(1,78), (2,78), (3, 78);
insert into t1 values(1,77), (2,77), (3, 77);
insert into t1 values(1,76), (2,76), (3, 76);
insert into t1 values(1,75), (2,75), (3, 75);
insert into t1 values(1,74), (2,74), (3, 74);
insert into t1 values(1,73), (2,73), (3, 73);
insert into t1 values(1,72), (2,72), (3, 72);
insert into t1 values(1,71), (2,71), (3, 71);
insert into t1 values(1,70), (2,70), (3, 70);
insert into t1 values(1,69), (2,69), (3, 69);
insert into t1 values(1,68), (2,68), (3, 68);
insert into t1 values(1,67), (2,67), (3, 67);
insert into t1 values(1,66), (2,66), (3, 66);
insert into t1 values(1,65), (2,65), (3, 65);
insert into t1 values(1,64), (2,64), (3, 64);
insert into t1 values(1,63), (2,63), (3, 63);
insert into t1 values(1,62), (2,62), (3, 62);
insert into t1 values(1,61), (2,61), (3, 61);
insert into t1 values(1,60), (2,60), (3, 60);
insert into t1 values(1,59), (2,59), (3, 59);
insert into t1 values(1,58), (2,58), (3, 58);
insert into t1 values(1,57), (2,57), (3, 57);
insert into t1 values(1,56), (2,56), (3, 56);
insert into t1 values(1,55), (2,55), (3, 55);
insert into t1 values(1,54), (2,54), (3, 54);
insert into t1 values(1,53), (2,53), (3, 53);
insert into t1 values(1,52), (2,52), (3, 52);
insert into t1 values(1,51), (2,51), (3, 51);
insert into t1 values(1,50), (2,50), (3, 50);
insert into t1 values(1,49), (2,49), (3, 49);
insert into t1 values(1,48), (2,48), (3, 48);
insert into t1 values(1,47), (2,47), (3, 47);
insert into t1 values(1,46), (2,46), (3, 46);
insert into t1 values(1,45), (2,45), (3, 45);
insert into t1 values(1,44), (2,44), (3, 44);
insert into t1 values(1,43), (2,43), (3, 43);
insert into t1 values(1,42), (2,42), (3, 42);
insert into t1 values(1,41), (2,41), (3, 41);
insert into t1 values(1,40), (2,40), (3, 40);
insert into t1 values(1,39), (2,39), (3, 39);
insert into t1 values(1,38), (2,38), (3, 38);
insert into t1 values(1,37), (2,37), (3, 37);
insert into t1 values(1,36), (2,36), (3, 36);
insert into t1 values(1,35), (2,35), (3, 35);
insert into t1 values(1,34), (2,34), (3, 34);
insert into t1 values(1,33), (2,33), (3, 33);
insert into t1 values(1,32), (2,32), (3, 32);
insert into t1 values(1,31), (2,31), (3, 31);
insert into t1 values(1,30), (2,30), (3, 30);
insert into t1 values(1,29), (2,29), (3, 29);
insert into t1 values(1,28), (2,28), (3, 28);
insert into t1 values(1,27), (2,27), (3, 27);
insert into t1 values(1,26), (2,26), (3, 26);
insert into t1 values(1,25), (2,25), (3, 25);
insert into t1 values(1,24), (2,24), (3, 24);
insert into t1 values(1,23), (2,23), (3, 23);
insert into t1 values(1,22), (2,22), (3, 22);
insert into t1 values(1,21), (2,21), (3, 21);
insert into t1 values(1,20), (2,20), (3, 20);
insert into t1 values(1,19), (2,19), (3, 19);
insert into t1 values(1,18), (2,18), (3, 18);
insert into t1 values(1,17), (2,17), (3, 17);
insert into t1 values(1,16), (2,16), (3, 16);
insert into t1 values(1,15), (2,15), (3, 15);
insert into t1 values(1,14), (2,14), (3, 14);
insert into t1 values(1,13), (2,13), (3, 13);
insert into t1 values(1,12), (2,12), (3, 12);
insert into t1 values(1,11), (2,11), (3, 11);
insert into t1 values(1,10), (2,10), (3, 10);
insert into t1 values(1,9), (2,9), (3, 9);
insert into t1 values(1,8), (2,8), (3, 8);
insert into t1 values(1,7), (2,7), (3, 7);
insert into t1 values(1,6), (2,6), (3, 6);
insert into t1 values(1,5), (2,5), (3, 5);
insert into t1 values(1,4), (2,4), (3, 4);
insert into t1 values(1,3), (2,3), (3, 3);
insert into t1 values(1,2), (2,2), (3, 2);
insert into t1 values(1,1), (2,1), (3, 1);
alter table t1 add unique (a,b), add key (b);
show keys from t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	a	1	a	A	NULL	NULL	NULL	YES	BTREE	
t1	0	a	2	b	A	NULL	NULL	NULL	YES	BTREE	
t1	1	b	1	b	A	100	NULL	NULL	YES	BTREE	
analyze table t1;
Table	Op	Msg_type	Msg_text
unknown's avatar
unknown committed
294
test.t1	analyze	status	OK
295 296
show keys from t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
unknown's avatar
unknown committed
297 298
t1	0	a	1	a	A	3	NULL	NULL	YES	BTREE	
t1	0	a	2	b	A	300	NULL	NULL	YES	BTREE	
299
t1	1	b	1	b	A	100	NULL	NULL	YES	BTREE	
300
drop table t1;
301 302 303 304 305
CREATE TABLE t1 (i int(10), index(i) );
ALTER TABLE t1 DISABLE KEYS;
INSERT DELAYED INTO t1 VALUES(1),(2),(3);
ALTER TABLE t1 ENABLE KEYS;
drop table t1;
unknown's avatar
unknown committed
306 307 308 309 310 311 312 313 314 315 316
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY  (Host,User)
) ENGINE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost',''),('games','monty');
SHOW INDEX FROM t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	PRIMARY	1	Host	A	NULL	NULL	NULL		BTREE	
317
t1	0	PRIMARY	2	User	A	0	NULL	NULL		BTREE	
unknown's avatar
unknown committed
318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
ALTER TABLE t1 ENABLE KEYS;
UNLOCK TABLES;
CHECK TABLES t1;
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
DROP TABLE t1;
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY  (Host,User),
KEY  (Host)
) ENGINE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	PRIMARY	1	Host	A	NULL	NULL	NULL		BTREE	
t1	0	PRIMARY	2	User	A	0	NULL	NULL		BTREE	
t1	1	Host	1	Host	A	NULL	NULL	NULL		BTREE	disabled
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost','');
SHOW INDEX FROM t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	PRIMARY	1	Host	A	NULL	NULL	NULL		BTREE	
341
t1	0	PRIMARY	2	User	A	0	NULL	NULL		BTREE	
unknown's avatar
unknown committed
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
t1	1	Host	1	Host	A	NULL	NULL	NULL		BTREE	disabled
ALTER TABLE t1 ENABLE KEYS;
SHOW INDEX FROM t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	PRIMARY	1	Host	A	NULL	NULL	NULL		BTREE	
t1	0	PRIMARY	2	User	A	2	NULL	NULL		BTREE	
t1	1	Host	1	Host	A	1	NULL	NULL		BTREE	
UNLOCK TABLES;
CHECK TABLES t1;
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
LOCK TABLES t1 WRITE;
ALTER TABLE t1 RENAME t2;
UNLOCK TABLES;
select * from t2;
Host	User
localhost	
localhost	root
DROP TABLE t2;
CREATE TABLE t1 (
Host varchar(16) binary NOT NULL default '',
User varchar(16) binary NOT NULL default '',
PRIMARY KEY  (Host,User),
KEY  (Host)
) ENGINE=MyISAM;
LOCK TABLES t1 WRITE;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment
t1	0	PRIMARY	1	Host	A	NULL	NULL	NULL		BTREE	
t1	0	PRIMARY	2	User	A	0	NULL	NULL		BTREE	
t1	1	Host	1	Host	A	NULL	NULL	NULL		BTREE	disabled
DROP TABLE t1;
create table t1 (a int);
alter table t1 rename to `t1\\`;
ERROR 42000: Incorrect table name 't1\\'
rename table t1 to `t1\\`;
ERROR 42000: Incorrect table name 't1\\'
drop table t1;
drop table if exists t1, t2;
Warnings:
Note	1051	Unknown table 't1'
Note	1051	Unknown table 't2'
create table t1 ( a varchar(10) not null primary key ) engine=myisam;
create table t2 ( a varchar(10) not null primary key ) engine=merge union=(t1);
flush tables;
alter table t1 modify a varchar(10);
show create table t2;
Table	Create Table
t2	CREATE TABLE `t2` (
unknown's avatar
unknown committed
392
  `a` varchar(10) NOT NULL,
unknown's avatar
unknown committed
393 394 395 396 397 398 399
  PRIMARY KEY  (`a`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`)
flush tables;
alter table t1 modify a varchar(10) not null;
show create table t2;
Table	Create Table
t2	CREATE TABLE `t2` (
unknown's avatar
unknown committed
400
  `a` varchar(10) NOT NULL,
unknown's avatar
unknown committed
401 402 403 404 405 406 407
  PRIMARY KEY  (`a`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t1`)
drop table if exists t1, t2;
create table t1 (a int, b int, c int, d int, e int, f int, g int, h int,i int, primary key (a,b,c,d,e,f,g,i,h)) engine=MyISAM;
insert into t1 (a) values(1);
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
unknown's avatar
unknown committed
408
t1	MyISAM	10	Fixed	1	37	X	X	X	X	X	X	X	X	latin1_swedish_ci	NULL		
unknown's avatar
unknown committed
409 410 411
alter table t1 modify a int;
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
unknown's avatar
unknown committed
412
t1	MyISAM	10	Fixed	1	37	X	X	X	X	X	X	X	X	latin1_swedish_ci	NULL		
unknown's avatar
unknown committed
413 414 415
drop table t1;
create table t1 (a int not null, b int not null, c int not null, d int not null, e int not null, f int not null, g int not null, h int not null,i int not null, primary key (a,b,c,d,e,f,g,i,h)) engine=MyISAM;
insert into t1 (a) values(1);
unknown's avatar
unknown committed
416 417 418 419 420 421 422 423 424
Warnings:
Warning	1364	Field 'b' doesn't have a default value
Warning	1364	Field 'c' doesn't have a default value
Warning	1364	Field 'd' doesn't have a default value
Warning	1364	Field 'e' doesn't have a default value
Warning	1364	Field 'f' doesn't have a default value
Warning	1364	Field 'g' doesn't have a default value
Warning	1364	Field 'h' doesn't have a default value
Warning	1364	Field 'i' doesn't have a default value
unknown's avatar
unknown committed
425 426
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
unknown's avatar
unknown committed
427
t1	MyISAM	10	Fixed	1	37	X	X	X	X	X	X	X	X	latin1_swedish_ci	NULL		
unknown's avatar
unknown committed
428
drop table t1;
429 430 431 432 433 434 435 436 437 438
set names koi8r;
create table t1 (a char(10) character set koi8r);
insert into t1 values ('');
select a,hex(a) from t1;
a	hex(a)
	D4C5D3D4
alter table t1 change a a char(10) character set cp1251;
select a,hex(a) from t1;
a	hex(a)
	F2E5F1F2
439
alter table t1 change a a binary(10);
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
select a,hex(a) from t1;
a	hex(a)
	F2E5F1F2
alter table t1 change a a char(10) character set cp1251;
select a,hex(a) from t1;
a	hex(a)
	F2E5F1F2
alter table t1 change a a char(10) character set koi8r;
select a,hex(a) from t1;
a	hex(a)
	D4C5D3D4
alter table t1 change a a varchar(10) character set cp1251;
select a,hex(a) from t1;
a	hex(a)
	F2E5F1F2
alter table t1 change a a char(10) character set koi8r;
select a,hex(a) from t1;
a	hex(a)
	D4C5D3D4
alter table t1 change a a text character set cp1251;
select a,hex(a) from t1;
a	hex(a)
	F2E5F1F2
alter table t1 change a a char(10) character set koi8r;
select a,hex(a) from t1;
a	hex(a)
	D4C5D3D4
467
delete from t1;
468 469 470 471
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` char(10) character set koi8r default NULL
unknown's avatar
unknown committed
472
) ENGINE=MyISAM DEFAULT CHARSET=latin1
473 474 475 476 477
alter table t1 DEFAULT CHARACTER SET latin1;
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` char(10) character set koi8r default NULL
unknown's avatar
unknown committed
478
) ENGINE=MyISAM DEFAULT CHARSET=latin1
479
alter table t1 CONVERT TO CHARACTER SET latin1;
480 481 482 483
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` char(10) default NULL
unknown's avatar
unknown committed
484
) ENGINE=MyISAM DEFAULT CHARSET=latin1
485 486 487 488 489
alter table t1 DEFAULT CHARACTER SET cp1251;
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `a` char(10) character set latin1 default NULL
unknown's avatar
unknown committed
490
) ENGINE=MyISAM DEFAULT CHARSET=cp1251
491
drop table t1;
492 493 494 495 496 497
create table t1 (myblob longblob,mytext longtext) 
default charset latin1 collate latin1_general_cs;
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `myblob` longblob,
498 499
  `mytext` longtext collate latin1_general_cs
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_cs
500 501 502 503 504
alter table t1 character set latin2;
show create table t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `myblob` longblob,
505 506
  `mytext` longtext character set latin1 collate latin1_general_cs
) ENGINE=MyISAM DEFAULT CHARSET=latin2
507
drop table t1;
unknown's avatar
unknown committed
508 509 510 511 512
CREATE TABLE t1 (a int PRIMARY KEY, b INT UNIQUE);
ALTER TABLE t1 DROP PRIMARY KEY;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
unknown's avatar
unknown committed
513
  `a` int(11) NOT NULL,
unknown's avatar
unknown committed
514 515 516 517
  `b` int(11) default NULL,
  UNIQUE KEY `b` (`b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
ALTER TABLE t1 DROP PRIMARY KEY;
unknown's avatar
unknown committed
518
ERROR 42000: Can't DROP 'PRIMARY'; check that column/key exists
unknown's avatar
unknown committed
519
DROP TABLE t1;
unknown's avatar
unknown committed
520 521 522 523 524 525
create table t1 (a int, b int, key(a));
insert into t1 values (1,1), (2,2);
alter table t1 drop key no_such_key;
ERROR 42000: Can't DROP 'no_such_key'; check that column/key exists
alter table t1 drop key a;
drop table t1;
526 527 528 529 530 531 532 533 534 535
create table t1 (a text) character set koi8r;
insert into t1 values (_koi8r'');
select hex(a) from t1;
hex(a)
D4C5D3D4
alter table t1 convert to character set cp1251;
select hex(a) from t1;
hex(a)
F2E5F1F2
drop table t1;
536 537 538 539
create table t1 ( a timestamp );
alter table t1 add unique ( a(1) );
ERROR HY000: Incorrect sub part key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique sub keys
drop table t1;