MDEV-4437 ALTER TABLE .. ADD UNIQUE INDEX IF NOT EXISTS causes syntax error.
Added the IF NOT EXISTS option to the CONSTRAINT keyword.
This commit is contained in:
parent
4157185f24
commit
b69ed7d621
@ -1907,3 +1907,15 @@ t1 CREATE TABLE `t1` (
|
|||||||
`b` bigint(20) DEFAULT NULL
|
`b` bigint(20) DEFAULT NULL
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
create table t1 (i int);
|
||||||
|
alter table t1 add unique index if not exists idx(i);
|
||||||
|
alter table t1 add unique index if not exists idx(i);
|
||||||
|
Warnings:
|
||||||
|
Note 1061 Duplicate key name 'idx'
|
||||||
|
show create table t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`i` int(11) DEFAULT NULL,
|
||||||
|
UNIQUE KEY `idx` (`i`)
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
|
DROP TABLE t1;
|
||||||
|
@ -1651,3 +1651,12 @@ alter table t1 change column if exists a b bigint;
|
|||||||
show create table t1;
|
show create table t1;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# MDEV-4437 ALTER TABLE .. ADD UNIQUE INDEX IF NOT EXISTS causes syntax error.
|
||||||
|
#
|
||||||
|
|
||||||
|
create table t1 (i int);
|
||||||
|
alter table t1 add unique index if not exists idx(i);
|
||||||
|
alter table t1 add unique index if not exists idx(i);
|
||||||
|
show create table t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
@ -955,10 +955,10 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
|
|||||||
%parse-param { THD *thd }
|
%parse-param { THD *thd }
|
||||||
%lex-param { THD *thd }
|
%lex-param { THD *thd }
|
||||||
/*
|
/*
|
||||||
Currently there are 164 shift/reduce conflicts.
|
Currently there are 163 shift/reduce conflicts.
|
||||||
We should not introduce new conflicts any more.
|
We should not introduce new conflicts any more.
|
||||||
*/
|
*/
|
||||||
%expect 164
|
%expect 163
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Comments for TOKENS.
|
Comments for TOKENS.
|
||||||
@ -5900,7 +5900,7 @@ key_def:
|
|||||||
if (add_create_index (Lex, $1, $3))
|
if (add_create_index (Lex, $1, $3))
|
||||||
MYSQL_YYABORT;
|
MYSQL_YYABORT;
|
||||||
}
|
}
|
||||||
| opt_constraint constraint_key_type opt_ident key_alg
|
| opt_constraint constraint_key_type opt_if_not_exists_ident key_alg
|
||||||
'(' key_list ')'
|
'(' key_list ')'
|
||||||
{ Lex->option_list= NULL; }
|
{ Lex->option_list= NULL; }
|
||||||
normal_key_options
|
normal_key_options
|
||||||
|
Loading…
x
Reference in New Issue
Block a user