Commit b258f911 authored by Sergei Golubchik's avatar Sergei Golubchik

fix ALTER TABLE .. DROP CONSTRAINT IF NOT EXISTS

parent 5c764a0e
......@@ -84,6 +84,9 @@ t2 CREATE TABLE `t2` (
) ENGINE=MyISAM DEFAULT CHARSET=latin1
alter table t2 drop constraint c;
ERROR 42000: Can't DROP CONSTRAINT `c`; check that it exists
alter table t2 drop constraint if exists c;
Warnings:
Note 1091 Can't DROP CONSTRAINT `c`; check that it exists
alter table t2 drop constraint min;
show create table t2;
Table Create Table
......
......@@ -48,6 +48,7 @@ create table t2 like t1;
show create table t2;
--error ER_CANT_DROP_FIELD_OR_KEY
alter table t2 drop constraint c;
alter table t2 drop constraint if exists c;
alter table t2 drop constraint min;
show create table t2;
......
......@@ -5880,7 +5880,7 @@ drop_create_field:
}
else if (drop->type == Alter_drop::CHECK_CONSTRAINT)
{
for (uint i=0; i < table->s->table_check_constraints; i++)
for (uint i=table->s->field_check_constraints; i < table->s->table_check_constraints; i++)
{
if (my_strcasecmp(system_charset_info, drop->name,
table->check_constraints[i]->name.str) == 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment