diff --git a/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/OracleDdl.java b/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/OracleDdl.java index ea7d50d62..740870b09 100644 --- a/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/OracleDdl.java +++ b/ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/OracleDdl.java @@ -15,6 +15,7 @@ public class OracleDdl extends PlatformDdl { this.dropConstraintIfExists = "drop constraint"; this.dropIndexIfExists = "drop index "; this.dropTableCascade = " cascade constraints purge"; + this.addColumn = "add"; this.alterColumn = "modify"; this.columnSetNotnull = "not null"; this.columnSetNull = "null"; diff --git a/ebean-ddl-generator/src/test/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl_AlterColumnTest.java b/ebean-ddl-generator/src/test/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl_AlterColumnTest.java index 3a0a8d727..a696c4e62 100644 --- a/ebean-ddl-generator/src/test/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl_AlterColumnTest.java +++ b/ebean-ddl-generator/src/test/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl_AlterColumnTest.java @@ -9,11 +9,15 @@ import io.ebean.config.dbplatform.mysql.MySqlPlatform; import io.ebean.config.dbplatform.oracle.OraclePlatform; import io.ebean.config.dbplatform.postgres.PostgresPlatform; import io.ebean.config.dbplatform.sqlserver.SqlServer17Platform; +import io.ebeaninternal.dbmigration.ddlgeneration.DdlWrite; import io.ebeaninternal.dbmigration.ddlgeneration.PlatformDdlBuilder; import io.ebeaninternal.dbmigration.migration.AlterColumn; import io.ebeaninternal.dbmigration.migration.AlterForeignKey; +import io.ebeaninternal.dbmigration.migration.Column; import org.junit.Test; +import java.io.IOException; + import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; @@ -238,6 +242,22 @@ public class PlatformDdl_AlterColumnTest { assertTrue(exceptionCaught); } + @Test + public void oracle_alterTableAddColumn() throws IOException { + DdlWrite write = new DdlWrite(); + oraDdl.alterTableAddColumn(write.apply(), "my_table", simpleColumn(), false, "1"); + assertThat(write.apply().getBuffer()).isEqualTo("alter table my_table add my_column int default 1 not null;\n"); + } + + private Column simpleColumn() { + Column column = new Column(); + column.setName("my_column"); + column.setType("int"); + column.setNotnull(true); + column.setDefaultValue("1"); + return column; + } + @Test public void useIdentityType_h2() { assertEquals(h2Ddl.useIdentityType(null), IdType.IDENTITY);