diff --git a/src/main/java/io/ebean/dbmigration/ddlgeneration/platform/BaseTableDdl.java b/src/main/java/io/ebean/dbmigration/ddlgeneration/platform/BaseTableDdl.java
index 7c7970948..ab14dbdd7 100644
--- a/src/main/java/io/ebean/dbmigration/ddlgeneration/platform/BaseTableDdl.java
+++ b/src/main/java/io/ebean/dbmigration/ddlgeneration/platform/BaseTableDdl.java
@@ -843,6 +843,7 @@ public class BaseTableDdl implements TableDdl {
buffer.append(" not null");
}
if (hasValue(column.getCheckConstraint())) {
+ buffer.append(" constraint ").append(column.getCheckConstraintName());
buffer.append(" ").append(column.getCheckConstraint());
}
}
diff --git a/src/test/java/io/ebean/dbmigration/ddlgeneration/BaseDdlHandlerTest.java b/src/test/java/io/ebean/dbmigration/ddlgeneration/BaseDdlHandlerTest.java
index 5bb490a4e..f8aa0132f 100644
--- a/src/test/java/io/ebean/dbmigration/ddlgeneration/BaseDdlHandlerTest.java
+++ b/src/test/java/io/ebean/dbmigration/ddlgeneration/BaseDdlHandlerTest.java
@@ -43,6 +43,14 @@ public class BaseDdlHandlerTest extends BaseTestCase {
assertThat(write.apply().getBuffer()).isEqualTo("alter table foo add column added_to_foo varchar(20);\n\n");
}
+ @Test
+ public void addColumn_withCheckConstraint() throws Exception {
+
+ DdlWrite write = new DdlWrite();
+ h2Handler().generate(write, Helper.getAlterTableAddColumnWithCheckConstraint());
+ assertThat(write.apply().getBuffer()).isEqualTo("alter table foo add column status integer constraint ck_ordering_status check ( status in (0,1));\n\n");
+ }
+
/**
* Test the functionality of the Ebean {@literal @}DbArray extension during DDL generation.
*/
diff --git a/src/test/java/io/ebean/dbmigration/ddlgeneration/Helper.java b/src/test/java/io/ebean/dbmigration/ddlgeneration/Helper.java
index decb0fc2a..27be79813 100644
--- a/src/test/java/io/ebean/dbmigration/ddlgeneration/Helper.java
+++ b/src/test/java/io/ebean/dbmigration/ddlgeneration/Helper.java
@@ -71,6 +71,10 @@ public class Helper {
return (AddColumn) alterTableChangeSetChildren.get(4);
}
+ public static AddColumn getAlterTableAddColumnWithCheckConstraint() {
+ return (AddColumn) alterTableChangeSetChildren.get(5);
+ }
+
public static DropColumn getDropColumn() {
return (DropColumn) changeSetChildren.get(2);
}
diff --git a/src/test/resources/container/test-alter-table.xml b/src/test/resources/container/test-alter-table.xml
index 5e8cb819b..cb1053e7f 100644
--- a/src/test/resources/container/test-alter-table.xml
+++ b/src/test/resources/container/test-alter-table.xml
@@ -24,6 +24,10 @@
+
+
+
+