diff --git a/src/main/java/net/sf/jsqlparser/statement/create/table/CreateTable.java b/src/main/java/net/sf/jsqlparser/statement/create/table/CreateTable.java index 643ce8bc4..fc8d37973 100644 --- a/src/main/java/net/sf/jsqlparser/statement/create/table/CreateTable.java +++ b/src/main/java/net/sf/jsqlparser/statement/create/table/CreateTable.java @@ -35,6 +35,7 @@ public class CreateTable implements Statement { private List indexes; private List tableElements; private Select select; + private DuplicateHandling duplicateHandling; private Table likeTable; private Table cloneTable; private ColDataType ofType; @@ -50,6 +51,19 @@ public class CreateTable implements Statement { private SpannerInterleaveIn interleaveIn = null; + public enum DuplicateHandling { + IGNORE, REPLACE + } + + /** MySQL's duplicate-key handling when creating a table from a query; null if omitted. */ + public DuplicateHandling getDuplicateHandling() { + return duplicateHandling; + } + + public void setDuplicateHandling(DuplicateHandling duplicateHandling) { + this.duplicateHandling = duplicateHandling; + } + @Override public T accept(StatementVisitor statementVisitor, S context) { return statementVisitor.visit(this, context); @@ -207,6 +221,9 @@ public void setUseAsKeyword(boolean useAsKeyword) { public StringBuilder appendSelectTo(StringBuilder builder, java.util.function.Consumer