浏览代码

fix issue #3839: 修复alter table character set类型DDL语句解析BUG (#3840)

flowell 3 年之前
父节点
当前提交
3c20fd09ad

+ 6 - 0
parse/src/main/java/com/alibaba/otter/canal/parse/inbound/mysql/ddl/DruidDdlParser.java

@@ -66,6 +66,12 @@ public class DruidDdlParser {
                 ddlResults.add(ddlResult);
             } else if (statement instanceof SQLAlterTableStatement) {
                 SQLAlterTableStatement alterTable = (SQLAlterTableStatement) statement;
+                if (alterTable.getTableOptions().size() > 0) {
+                    DdlResult ddlResult = new DdlResult();
+                    processName(ddlResult, schmeaName, alterTable.getName(), false);
+                    ddlResult.setType(EventType.ALTER);
+                    ddlResults.add(ddlResult);
+                }
                 for (SQLAlterTableItem item : alterTable.getItems()) {
                     if (item instanceof SQLAlterTableRename) {
                         DdlResult ddlResult = new DdlResult();