From 5940c8510383dda5753a96d3bcd89798675aa71e Mon Sep 17 00:00:00 2001 From: Jiri Pechanec Date: Fri, 15 May 2020 07:06:21 +0200 Subject: [PATCH] DBZ-2080 Support named PKs in ALTER TABLE --- .../io/debezium/ddl/parser/mysql/generated/MySqlParser.g4 | 2 +- .../src/test/resources/mysql/examples/ddl_alter.sql | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/debezium-ddl-parser/src/main/antlr4/io/debezium/ddl/parser/mysql/generated/MySqlParser.g4 b/debezium-ddl-parser/src/main/antlr4/io/debezium/ddl/parser/mysql/generated/MySqlParser.g4 index 201f51e31..12c7de804 100644 --- a/debezium-ddl-parser/src/main/antlr4/io/debezium/ddl/parser/mysql/generated/MySqlParser.g4 +++ b/debezium-ddl-parser/src/main/antlr4/io/debezium/ddl/parser/mysql/generated/MySqlParser.g4 @@ -598,7 +598,7 @@ alterSpecification ')' #alterByAddColumns | ADD indexFormat=(INDEX | KEY) uid? indexType? indexColumnNames indexOption* #alterByAddIndex - | ADD (CONSTRAINT name=uid?)? PRIMARY KEY + | ADD (CONSTRAINT name=uid?)? PRIMARY KEY index=uid? indexType? indexColumnNames indexOption* #alterByAddPrimaryKey | ADD (CONSTRAINT name=uid?)? UNIQUE indexFormat=(INDEX | KEY)? indexName=uid? diff --git a/debezium-ddl-parser/src/test/resources/mysql/examples/ddl_alter.sql b/debezium-ddl-parser/src/test/resources/mysql/examples/ddl_alter.sql index 8c7319018..793f2cb2a 100644 --- a/debezium-ddl-parser/src/test/resources/mysql/examples/ddl_alter.sql +++ b/debezium-ddl-parser/src/test/resources/mysql/examples/ddl_alter.sql @@ -11,6 +11,10 @@ alter table t2 drop primary key; alter table t3 rename to table3column; alter table childtable add constraint `fk1` foreign key (idParent) references parenttable(id) on delete restrict on update cascade; alter table table3column default character set = cp1251; +alter table table1 add primary key (id); +alter table table1 add primary key table_pk (id); +alter table table1 add primary key `table_pk` (id); +alter table table1 add primary key `table_pk` (`id`); #end #begin -- Alter database