mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
a1bd0bd118
columns Fixed confusing warning. Quoting INSERT section of the manual: ---- Inserting NULL into a column that has been declared NOT NULL. For multiple-row INSERT statements or INSERT INTO ... SELECT statements, the column is set to the implicit default value for the column data type. This is 0 for numeric types, the empty string ('') for string types, and the "zero" value for date and time types. INSERT INTO ... SELECT statements are handled the same way as multiple-row inserts because the server does not examine the result set from the SELECT to see whether it returns a single row. (For a single-row INSERT, no warning occurs when NULL is inserted into a NOT NULL column. Instead, the statement fails with an error.) ---- This is also true for LOAD DATA INFILE. For INSERT user can specify DEFAULT keyword as a value to set column default. There is no similiar feature available for LOAD DATA INFILE. mysql-test/r/auto_increment.result: Fixed confusing warning. mysql-test/r/create.result: Fixed confusing warning. mysql-test/r/insert.result: Fixed confusing warning. mysql-test/r/insert_select.result: Fixed confusing warning. mysql-test/r/key.result: Fixed confusing warning. mysql-test/r/null.result: Fixed confusing warning. mysql-test/r/null_key.result: Fixed confusing warning. mysql-test/r/ps_2myisam.result: Fixed confusing warning. mysql-test/r/ps_3innodb.result: Fixed confusing warning. mysql-test/r/ps_4heap.result: Fixed confusing warning. mysql-test/r/ps_5merge.result: Fixed confusing warning. mysql-test/r/ps_6bdb.result: Fixed confusing warning. mysql-test/r/strict.result: Fixed confusing warning. mysql-test/r/view.result: Fixed confusing warning. mysql-test/r/warnings.result: Fixed confusing warning. sql/share/errmsg.txt: Fixed confusing warning.
484 lines
16 KiB
Text
484 lines
16 KiB
Text
drop table if exists t1,t2,t3;
|
||
SET SQL_WARNINGS=1;
|
||
CREATE TABLE t1 (
|
||
ID CHAR(32) NOT NULL,
|
||
name CHAR(32) NOT NULL,
|
||
value CHAR(255),
|
||
INDEX indexIDname (ID(8),name(8))
|
||
) ;
|
||
INSERT INTO t1 VALUES
|
||
('keyword','indexdir','/export/home/local/www/database/indexes/keyword');
|
||
INSERT INTO t1 VALUES ('keyword','urlprefix','text/ /text');
|
||
INSERT INTO t1 VALUES ('keyword','urlmap','/text/ /');
|
||
INSERT INTO t1 VALUES ('keyword','attr','personal employee company');
|
||
INSERT INTO t1 VALUES
|
||
('emailgids','indexdir','/export/home/local/www/database/indexes/emailgids');
|
||
INSERT INTO t1 VALUES ('emailgids','urlprefix','text/ /text');
|
||
INSERT INTO t1 VALUES ('emailgids','urlmap','/text/ /');
|
||
INSERT INTO t1 VALUES ('emailgids','attr','personal employee company');
|
||
SELECT value FROM t1 WHERE ID='emailgids' AND name='attr';
|
||
value
|
||
personal employee company
|
||
drop table t1;
|
||
CREATE TABLE t1 (
|
||
price int(5) DEFAULT '0' NOT NULL,
|
||
area varchar(40) DEFAULT '' NOT NULL,
|
||
type varchar(40) DEFAULT '' NOT NULL,
|
||
transityes enum('Y','N') DEFAULT 'Y' NOT NULL,
|
||
shopsyes enum('Y','N') DEFAULT 'Y' NOT NULL,
|
||
schoolsyes enum('Y','N') DEFAULT 'Y' NOT NULL,
|
||
petsyes enum('Y','N') DEFAULT 'Y' NOT NULL,
|
||
KEY price (price,area,type,transityes,shopsyes,schoolsyes,petsyes)
|
||
);
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','N','N','N','N');
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','N','N','N','N');
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','','','','');
|
||
Warnings:
|
||
Warning 1265 Data truncated for column 'transityes' at row 1
|
||
Warning 1265 Data truncated for column 'shopsyes' at row 1
|
||
Warning 1265 Data truncated for column 'schoolsyes' at row 1
|
||
Warning 1265 Data truncated for column 'petsyes' at row 1
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
|
||
INSERT INTO t1 VALUES (900,'Vancouver','Shared/Roomate','Y','Y','Y','Y');
|
||
SELECT * FROM t1 WHERE area='Vancouver' and transityes='y' and schoolsyes='y' and ( ((type='1 Bedroom' or type='Studio/Bach') and (price<=500)) or ((type='2 Bedroom') and (price<=550)) or ((type='Shared/Roomate') and (price<=300)) or ((type='Room and Board') and (price<=500)) ) and price <= 400;
|
||
price area type transityes shopsyes schoolsyes petsyes
|
||
drop table t1;
|
||
CREATE TABLE t1 (program enum('signup','unique','sliding') not null, type enum('basic','sliding','signup'), sites set('mt'), PRIMARY KEY (program));
|
||
ALTER TABLE t1 modify program enum('signup','unique','sliding');
|
||
drop table t1;
|
||
CREATE TABLE t1 (
|
||
name varchar(50) DEFAULT '' NOT NULL,
|
||
author varchar(50) DEFAULT '' NOT NULL,
|
||
category decimal(10,0) DEFAULT '0' NOT NULL,
|
||
email varchar(50),
|
||
password varchar(50),
|
||
proxy varchar(50),
|
||
bitmap varchar(20),
|
||
msg varchar(255),
|
||
urlscol varchar(127),
|
||
urlhttp varchar(127),
|
||
timeout decimal(10,0),
|
||
nbcnx decimal(10,0),
|
||
creation decimal(10,0),
|
||
livinguntil decimal(10,0),
|
||
lang decimal(10,0),
|
||
type decimal(10,0),
|
||
subcat decimal(10,0),
|
||
subtype decimal(10,0),
|
||
reg char(1),
|
||
scs varchar(255),
|
||
capacity decimal(10,0),
|
||
userISP varchar(50),
|
||
CCident varchar(50) DEFAULT '' NOT NULL,
|
||
PRIMARY KEY (name,author,category)
|
||
);
|
||
INSERT INTO t1 VALUES
|
||
('patnom','patauteur',0,'p.favre@cryo-networks.fr',NULL,NULL,'#p2sndnq6ae5g1u6t','essai salut','scol://195.242.78.119:patauteur.patnom',NULL,NULL,NULL,950036174,-882087474,NULL,3,0,3,'1','Pub/patnom/futur_divers.scs',NULL,'pat','CC1');
|
||
INSERT INTO t1 VALUES
|
||
('LeNomDeMonSite','Marc',0,'m.barilley@cryo-networks.fr',NULL,NULL,NULL,NULL,'scol://195.242.78.119:Marc.LeNomDeMonSite',NULL,NULL,NULL,950560434,-881563214,NULL,3,0,3,'1','Pub/LeNomDeMonSite/domus_hibere.scs',NULL,'Marq','CC1');
|
||
select * from t1 where name='patnom' and author='patauteur' and category=0;
|
||
name author category email password proxy bitmap msg urlscol urlhttp timeout nbcnx creation livinguntil lang type subcat subtype reg scs capacity userISP CCident
|
||
patnom patauteur 0 p.favre@cryo-networks.fr NULL NULL #p2sndnq6ae5g1u6t essai salut scol://195.242.78.119:patauteur.patnom NULL NULL NULL 950036174 -882087474 NULL 3 0 3 1 Pub/patnom/futur_divers.scs NULL pat CC1
|
||
drop table t1;
|
||
create table t1
|
||
(
|
||
name_id int not null auto_increment,
|
||
name blob,
|
||
INDEX name_idx (name(5)),
|
||
primary key (name_id)
|
||
);
|
||
INSERT t1 VALUES(NULL,'/');
|
||
INSERT t1 VALUES(NULL,'[T,U]_axpby');
|
||
SELECT * FROM t1 WHERE name='[T,U]_axpy';
|
||
name_id name
|
||
SELECT * FROM t1 WHERE name='[T,U]_axpby';
|
||
name_id name
|
||
2 [T,U]_axpby
|
||
create table t2
|
||
(
|
||
name_id int not null auto_increment,
|
||
name char(255) binary,
|
||
INDEX name_idx (name(5)),
|
||
primary key (name_id)
|
||
);
|
||
INSERT t2 select * from t1;
|
||
SELECT * FROM t2 WHERE name='[T,U]_axpy';
|
||
name_id name
|
||
SELECT * FROM t2 WHERE name='[T,U]_axpby';
|
||
name_id name
|
||
2 [T,U]_axpby
|
||
CREATE TABLE t3 SELECT * FROM t2 WHERE name='[T,U]_axpby';
|
||
SELECT * FROM t2 WHERE name='[T,U]_axpby';
|
||
name_id name
|
||
2 [T,U]_axpby
|
||
drop table t1,t2,t3;
|
||
create table t1
|
||
(
|
||
SEQNO numeric(12 ) not null,
|
||
MOTYPEID numeric(12 ) not null,
|
||
MOINSTANCEID numeric(12 ) not null,
|
||
ATTRID numeric(12 ) not null,
|
||
VALUE varchar(120) not null,
|
||
primary key (SEQNO, MOTYPEID, MOINSTANCEID, ATTRID, VALUE )
|
||
);
|
||
INSERT INTO t1 VALUES (1, 1, 1, 1, 'a');
|
||
INSERT INTO t1 VALUES (1, 1, 1, 1, 'b');
|
||
INSERT INTO t1 VALUES (1, 1, 1, 1, 'a');
|
||
ERROR 23000: Duplicate entry '1-1-1-1-a' for key 'PRIMARY'
|
||
drop table t1;
|
||
CREATE TABLE t1 (
|
||
a tinytext NOT NULL,
|
||
b tinyint(3) unsigned NOT NULL default '0',
|
||
PRIMARY KEY (a(32),b)
|
||
) ENGINE=MyISAM;
|
||
INSERT INTO t1 VALUES ('a',1),('a',2);
|
||
SELECT * FROM t1 WHERE a='a' AND b=2;
|
||
a b
|
||
a 2
|
||
SELECT * FROM t1 WHERE a='a' AND b in (2);
|
||
a b
|
||
a 2
|
||
SELECT * FROM t1 WHERE a='a' AND b in (1,2);
|
||
a b
|
||
a 1
|
||
a 2
|
||
drop table t1;
|
||
create table t1 (a int not null unique, b int unique, c int, d int not null primary key, key(c), e int not null unique);
|
||
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 PRIMARY 1 d A 0 NULL NULL BTREE
|
||
t1 0 a 1 a A 0 NULL NULL BTREE
|
||
t1 0 e 1 e A 0 NULL NULL BTREE
|
||
t1 0 b 1 b A NULL NULL NULL YES BTREE
|
||
t1 1 c 1 c A NULL NULL NULL YES BTREE
|
||
drop table t1;
|
||
CREATE TABLE t1 (c CHAR(10) NOT NULL,i INT NOT NULL AUTO_INCREMENT,
|
||
UNIQUE (c,i));
|
||
INSERT INTO t1 (c) VALUES (NULL),(NULL);
|
||
Warnings:
|
||
Warning 1048 Column 'c' cannot be null
|
||
Warning 1048 Column 'c' cannot be null
|
||
SELECT * FROM t1;
|
||
c i
|
||
1
|
||
2
|
||
INSERT INTO t1 (c) VALUES ('a'),('a');
|
||
SELECT * FROM t1;
|
||
c i
|
||
1
|
||
2
|
||
a 1
|
||
a 2
|
||
DROP TABLE IF EXISTS t1;
|
||
CREATE TABLE t1 (c CHAR(10) NULL, i INT NOT NULL AUTO_INCREMENT,
|
||
UNIQUE (c,i));
|
||
INSERT INTO t1 (c) VALUES (NULL),(NULL);
|
||
SELECT * FROM t1;
|
||
c i
|
||
NULL 1
|
||
NULL 2
|
||
INSERT INTO t1 (c) VALUES ('a'),('a');
|
||
SELECT * FROM t1;
|
||
c i
|
||
NULL 1
|
||
NULL 2
|
||
a 1
|
||
a 2
|
||
drop table t1;
|
||
create table t1 (i int, a char(200), b text, unique (a), unique (b(300))) charset utf8;
|
||
insert t1 values (1, repeat('a',210), repeat('b', 310));
|
||
Warnings:
|
||
Warning 1265 Data truncated for column 'a' at row 1
|
||
insert t1 values (2, repeat(0xD0B1,215), repeat(0xD0B1, 310));
|
||
Warnings:
|
||
Warning 1265 Data truncated for column 'a' at row 1
|
||
select i, length(a), length(b), char_length(a), char_length(b) from t1;
|
||
i length(a) length(b) char_length(a) char_length(b)
|
||
1 200 310 200 310
|
||
2 400 620 200 310
|
||
select i from t1 where a=repeat(_utf8 'a',200);
|
||
i
|
||
1
|
||
select i from t1 where a=repeat(_utf8 0xD0B1,200);
|
||
i
|
||
2
|
||
select i from t1 where b=repeat(_utf8 'b',310);
|
||
i
|
||
1
|
||
drop table t1;
|
||
CREATE TABLE t1 (id int unsigned auto_increment, name char(50), primary key (id)) engine=myisam;
|
||
insert into t1 (name) values ('a'), ('b'),('c'),('d'),('e'),('f'),('g');
|
||
explain select 1 from t1 where id =2;
|
||
id select_type table type possible_keys key key_len ref rows Extra
|
||
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1 Using index
|
||
explain select 1 from t1 where id =2 or id=3;
|
||
id select_type table type possible_keys key key_len ref rows Extra
|
||
1 SIMPLE t1 index PRIMARY PRIMARY 4 NULL 7 Using where; Using index
|
||
explain select name from t1 where id =2;
|
||
id select_type table type possible_keys key key_len ref rows Extra
|
||
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
|
||
ALTER TABLE t1 DROP PRIMARY KEY, ADD INDEX (id);
|
||
explain select 1 from t1 where id =2;
|
||
id select_type table type possible_keys key key_len ref rows Extra
|
||
1 SIMPLE t1 ref id id 4 const 1 Using index
|
||
drop table t1;
|
||
CREATE TABLE t1 (numeropost mediumint(8) unsigned NOT NULL default '0', numreponse int(10) unsigned NOT NULL auto_increment, PRIMARY KEY (numeropost,numreponse), UNIQUE KEY numreponse (numreponse));
|
||
INSERT INTO t1 (numeropost,numreponse) VALUES ('1','1'),('1','2'),('2','3'),('2','4');
|
||
SELECT numeropost FROM t1 WHERE numreponse='1';
|
||
numeropost
|
||
1
|
||
EXPLAIN SELECT numeropost FROM t1 WHERE numreponse='1';
|
||
id select_type table type possible_keys key key_len ref rows Extra
|
||
1 SIMPLE t1 const numreponse numreponse 4 const 1 Using index
|
||
FLUSH TABLES;
|
||
SELECT numeropost FROM t1 WHERE numreponse='1';
|
||
numeropost
|
||
1
|
||
drop table t1;
|
||
create table t1 (c varchar(30) character set utf8, t text character set utf8, unique (c(2)), unique (t(3))) engine=myisam;
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`c` varchar(30) CHARACTER SET utf8 DEFAULT NULL,
|
||
`t` text CHARACTER SET utf8,
|
||
UNIQUE KEY `c` (`c`(2)),
|
||
UNIQUE KEY `t` (`t`(3))
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
insert t1 values ('cccc', 'tttt'),
|
||
(0xD0B1212223D0B1D0B1D0B1D0B1D0B1, 0xD0B1D0B1212223D0B1D0B1D0B1D0B1),
|
||
(0xD0B1222123D0B1D0B1D0B1D0B1D0B1, 0xD0B1D0B1222123D0B1D0B1D0B1D0B1);
|
||
insert t1 (c) values ('cc22');
|
||
ERROR 23000: Duplicate entry 'cc22' for key 'c'
|
||
insert t1 (t) values ('ttt22');
|
||
ERROR 23000: Duplicate entry 'ttt22' for key 't'
|
||
insert t1 (c) values (0xD0B1212322D0B1D0B1D0B1D0B1D0B1);
|
||
ERROR 23000: Duplicate entry 'б!#"<22>' for key 'c'
|
||
insert t1 (t) values (0xD0B1D0B1212322D0B1D0B1D0B1D0B1);
|
||
ERROR 23000: Duplicate entry 'бб!#"б' for key 't'
|
||
select c from t1 where c='cccc';
|
||
c
|
||
cccc
|
||
select t from t1 where t='tttt';
|
||
t
|
||
tttt
|
||
select c from t1 where c=0xD0B1212223D0B1D0B1D0B1D0B1D0B1;
|
||
c
|
||
?!"#?????
|
||
select t from t1 where t=0xD0B1D0B1212223D0B1D0B1D0B1D0B1;
|
||
t
|
||
??!"#????
|
||
drop table t1;
|
||
DROP TABLE IF EXISTS t1;
|
||
Warnings:
|
||
Note 1051 Unknown table 't1'
|
||
CREATE TABLE t1 (
|
||
c1 int,
|
||
c2 varbinary(240),
|
||
UNIQUE KEY (c1),
|
||
KEY (c2)
|
||
) ENGINE=MyISAM;
|
||
INSERT INTO t1 VALUES (1,'\Z\Z\Z\Z');
|
||
INSERT INTO t1 VALUES (2,'\Z\Z\Z\Z\Z\Z');
|
||
INSERT INTO t1 VALUES (3,'\Z\Z\Z\Z');
|
||
select c1 from t1 where c2='\Z\Z\Z\Z';
|
||
c1
|
||
1
|
||
3
|
||
DELETE FROM t1 WHERE (c1 = 1);
|
||
check table t1;
|
||
Table Op Msg_type Msg_text
|
||
test.t1 check status OK
|
||
select c1 from t1 where c2='\Z\Z\Z\Z';
|
||
c1
|
||
3
|
||
DELETE FROM t1 WHERE (c1 = 3);
|
||
check table t1;
|
||
Table Op Msg_type Msg_text
|
||
test.t1 check status OK
|
||
select c1 from t1 where c2='\Z\Z\Z\Z';
|
||
c1
|
||
truncate table t1;
|
||
insert into t1 values(1,"aaaa"),(2,"aaab"),(3,"aaac"),(4,"aaccc");
|
||
delete from t1 where c1=3;
|
||
delete from t1 where c1=1;
|
||
delete from t1 where c1=4;
|
||
check table t1;
|
||
Table Op Msg_type Msg_text
|
||
test.t1 check status OK
|
||
drop table t1;
|
||
create table t1 (c char(10), index (c(0)));
|
||
ERROR HY000: Key part 'c' length cannot be 0
|
||
create table t1 (c char(10), index (c,c));
|
||
ERROR 42S21: Duplicate column name 'c'
|
||
create table t1 (c1 char(10), c2 char(10), index (c1,c2,c1));
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
create table t1 (c1 char(10), c2 char(10), index (c1,c1,c2));
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
create table t1 (c1 char(10), c2 char(10), index (c2,c1,c1));
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
create table t1 (c1 char(10), c2 char(10));
|
||
alter table t1 add key (c1,c1);
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
alter table t1 add key (c2,c1,c1);
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
alter table t1 add key (c1,c2,c1);
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
alter table t1 add key (c1,c1,c2);
|
||
ERROR 42S21: Duplicate column name 'c1'
|
||
drop table t1;
|
||
create table t1 (
|
||
i1 INT NOT NULL,
|
||
i2 INT NOT NULL,
|
||
UNIQUE i1idx (i1),
|
||
UNIQUE i2idx (i2));
|
||
desc t1;
|
||
Field Type Null Key Default Extra
|
||
i1 int(11) NO PRI
|
||
i2 int(11) NO UNI
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`i1` int(11) NOT NULL,
|
||
`i2` int(11) NOT NULL,
|
||
UNIQUE KEY `i1idx` (`i1`),
|
||
UNIQUE KEY `i2idx` (`i2`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
drop table t1;
|
||
create table t1 (
|
||
c1 int,
|
||
c2 varchar(20) not null,
|
||
primary key (c1),
|
||
key (c2(10))
|
||
) engine=myisam;
|
||
insert into t1 values (1,'');
|
||
insert into t1 values (2,' \t\tTest String');
|
||
insert into t1 values (3,' \n\tTest String');
|
||
update t1 set c2 = 'New Test String' where c1 = 1;
|
||
select * from t1;
|
||
c1 c2
|
||
1 New Test String
|
||
2 Test String
|
||
3
|
||
Test String
|
||
drop table t1;
|
||
create table t1 (a varchar(10), b varchar(10), key(a(10),b(10)));
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`a` varchar(10) DEFAULT NULL,
|
||
`b` varchar(10) DEFAULT NULL,
|
||
KEY `a` (`a`,`b`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
alter table t1 modify b varchar(20);
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`a` varchar(10) DEFAULT NULL,
|
||
`b` varchar(20) DEFAULT NULL,
|
||
KEY `a` (`a`,`b`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
alter table t1 modify a varchar(20);
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`a` varchar(20) DEFAULT NULL,
|
||
`b` varchar(20) DEFAULT NULL,
|
||
KEY `a` (`a`,`b`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
drop table t1;
|
||
create table t1 (a int not null primary key, b varchar(20) not null unique);
|
||
desc t1;
|
||
Field Type Null Key Default Extra
|
||
a int(11) NO PRI
|
||
b varchar(20) NO UNI
|
||
drop table t1;
|
||
create table t1 (a int not null primary key, b int not null unique);
|
||
desc t1;
|
||
Field Type Null Key Default Extra
|
||
a int(11) NO PRI
|
||
b int(11) NO UNI
|
||
drop table t1;
|
||
create table t1 (a int not null primary key, b varchar(20) not null, unique (b(10)));
|
||
desc t1;
|
||
Field Type Null Key Default Extra
|
||
a int(11) NO PRI
|
||
b varchar(20) NO UNI
|
||
drop table t1;
|
||
create table t1 (a int not null primary key, b varchar(20) not null, c varchar(20) not null, unique(b(10),c(10)));
|
||
desc t1;
|
||
Field Type Null Key Default Extra
|
||
a int(11) NO PRI
|
||
b varchar(20) NO MUL
|
||
c varchar(20) NO
|
||
drop table t1;
|
||
create table t1 (
|
||
c1 int,
|
||
c2 char(12),
|
||
c3 varchar(123),
|
||
c4 timestamp,
|
||
index (c1),
|
||
index i1 (c1),
|
||
index i2 (c2),
|
||
index i3 (c3),
|
||
unique i4 (c4),
|
||
index i5 (c1, c2, c3, c4),
|
||
primary key (c2, c3),
|
||
index (c2, c4));
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`c1` int(11) DEFAULT NULL,
|
||
`c2` char(12) NOT NULL DEFAULT '',
|
||
`c3` varchar(123) NOT NULL DEFAULT '',
|
||
`c4` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
PRIMARY KEY (`c2`,`c3`),
|
||
UNIQUE KEY `i4` (`c4`),
|
||
KEY `c1` (`c1`),
|
||
KEY `i1` (`c1`),
|
||
KEY `i2` (`c2`),
|
||
KEY `i3` (`c3`),
|
||
KEY `i5` (`c1`,`c2`,`c3`,`c4`),
|
||
KEY `c2` (`c2`,`c4`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
alter table t1 drop index c1;
|
||
alter table t1 add index (c1);
|
||
alter table t1 add index (c1);
|
||
alter table t1 drop index i3;
|
||
alter table t1 add index i3 (c3);
|
||
alter table t1 drop index i2, drop index i4;
|
||
alter table t1 add index i2 (c2), add index i4 (c4);
|
||
alter table t1 drop index i2, drop index i4, add index i6 (c2, c4);
|
||
alter table t1 add index i2 (c2), add index i4 (c4), drop index i6;
|
||
alter table t1 drop index i2, drop index i4, add unique i4 (c4);
|
||
alter table t1 add index i2 (c2), drop index i4, add index i4 (c4);
|
||
alter table t1 drop index c2, add index (c2(4),c3(7));
|
||
alter table t1 drop index c2, add index (c2(4),c3(7));
|
||
alter table t1 add primary key (c1, c2), drop primary key;
|
||
alter table t1 drop primary key;
|
||
alter table t1 add primary key (c1, c2), drop primary key;
|
||
ERROR 42000: Can't DROP 'PRIMARY'; check that column/key exists
|
||
show create table t1;
|
||
Table Create Table
|
||
t1 CREATE TABLE `t1` (
|
||
`c1` int(11) NOT NULL DEFAULT '0',
|
||
`c2` char(12) NOT NULL DEFAULT '',
|
||
`c3` varchar(123) NOT NULL DEFAULT '',
|
||
`c4` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
KEY `i1` (`c1`),
|
||
KEY `i5` (`c1`,`c2`,`c3`,`c4`),
|
||
KEY `c1` (`c1`),
|
||
KEY `c1_2` (`c1`),
|
||
KEY `i3` (`c3`),
|
||
KEY `i2` (`c2`),
|
||
KEY `i4` (`c4`),
|
||
KEY `c2` (`c2`(4),`c3`(7))
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||
insert into t1 values(1, 'a', 'a', NULL);
|
||
insert into t1 values(1, 'b', 'b', NULL);
|
||
alter table t1 drop index i3, drop index i2, drop index i1;
|
||
alter table t1 add index i3 (c3), add index i2 (c2), add unique index i1 (c1);
|
||
ERROR 23000: Duplicate entry '1' for key 'i1'
|
||
drop table t1;
|