From 3dfdd0e2e878d6815e77b9a676501bfdebc06c77 Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Mon, 26 Feb 2018 23:58:10 +0100 Subject: [PATCH] #1292 - Fix for non-native / number boolean types (MySql, SqlServer, Oracle, Sqlite, SqlAnywhere) removing "default 0" + Fix for DB2 add foreign key update clause --- howto-test.md | 13 +++++----- .../dbplatform/mysql/MySqlPlatform.java | 9 +++++-- .../dbplatform/oracle/OraclePlatform.java | 6 ++++- .../dbplatform/postgres/PostgresPlatform.java | 2 ++ .../sqlanywhere/SqlAnywherePlatform.java | 2 +- .../dbplatform/sqlite/SQLitePlatform.java | 7 ++++-- .../sqlserver/SqlServerPlatform.java | 5 +++- .../ddlgeneration/platform/DB2Ddl.java | 6 +++++ .../ddlgeneration/platform/PlatformDdl.java | 24 ++++++------------ .../config/dbplatform/MySqlPlatformTest.java | 4 +-- .../config/dbplatform/OraclePlatformTest.java | 2 +- .../migrationtest/db2/1.0__initial.sql | 6 ++--- .../dbmigration/migrationtest/db2/1.1.sql | 24 +++++++++--------- .../dbmigration/migrationtest/db2/1.3.sql | 8 +++--- .../dbmigration/migrationtest/h2/1.1.sql | 14 +++++------ .../dbmigration/migrationtest/h2/1.3.sql | 2 +- .../dbmigration/migrationtest/hsqldb/1.1.sql | 14 +++++------ .../dbmigration/migrationtest/hsqldb/1.3.sql | 2 +- .../migrationtest/mysql/1.0__initial.sql | 2 +- .../dbmigration/migrationtest/mysql/1.1.sql | 12 ++++----- .../dbmigration/migrationtest/mysql/1.3.sql | 2 +- .../migrationtest/oracle/1.0__initial.sql | 2 +- .../dbmigration/migrationtest/oracle/1.1.sql | 12 ++++----- .../dbmigration/migrationtest/oracle/1.3.sql | 2 +- .../migrationtest/postgres/1.1.sql | 14 +++++------ .../migrationtest/postgres/1.3.sql | 2 +- .../migrationtest/sqlite/1.0__initial.sql | 2 +- .../dbmigration/migrationtest/sqlite/1.1.sql | 12 ++++----- .../dbmigration/migrationtest/sqlite/1.3.sql | 2 +- .../migrationtest/sqlserver/1.0__initial.sql | 25 +++++++++---------- .../migrationtest/sqlserver/1.1.sql | 12 ++++----- .../migrationtest/sqlserver/1.3.sql | 6 ++--- 32 files changed, 135 insertions(+), 122 deletions(-) diff --git a/howto-test.md b/howto-test.md index 243ed5200..dcb2c727d 100644 --- a/howto-test.md +++ b/howto-test.md @@ -48,7 +48,8 @@ Reqirements run: `mvn clean test -Ddatasource.default=pg` Current status: PASS -Tests run: 1986, Failures: 0, Errors: 0, Skipped: 16 +Tests run: 2166, Failures: 0, Errors: 0, Skipped: 25 + 'mysql' platform @@ -61,8 +62,8 @@ Reqirements run: `mvn clean test -Ddatasource.default=mysql` -Current status: FAIL -Tests run: 1986, Failures: 2, Errors: 4, Skipped: 16 +Current status: PASS +Tests run: 2166, Failures: 0, Errors: 0, Skipped: 33 @@ -76,8 +77,8 @@ Reqires an installed sqlserver - e.g. https://hub.docker.com/r/microsoft/mssql-s run: `mvn clean test -Ddatasource.default=mssql` -Current status: FAIL -Tests run: 1986, Failures: 19, Errors: 43, Skipped: 16 +Current status: PASS +Tests run: 2166, Failures: 0, Errors: 0, Skipped: 39 @@ -107,7 +108,7 @@ Reqires a locally installed DB2 Express-C server. run: `mvn clean test -Ddatasource.default=db2 -Pdb2` Current status: FAIL -Tests run: 1986, Failures: 33, Errors: 26, Skipped: 16 +Tests run: 2166, Failures: 29, Errors: 58, Skipped: 30 'sqlite' platform diff --git a/src/main/java/io/ebean/config/dbplatform/mysql/MySqlPlatform.java b/src/main/java/io/ebean/config/dbplatform/mysql/MySqlPlatform.java index bea7ed391..9ee373288 100644 --- a/src/main/java/io/ebean/config/dbplatform/mysql/MySqlPlatform.java +++ b/src/main/java/io/ebean/config/dbplatform/mysql/MySqlPlatform.java @@ -35,6 +35,11 @@ public class MySqlPlatform extends DatabasePlatform { this.dbIdentity.setSupportsGetGeneratedKeys(true); this.dbIdentity.setSupportsIdentity(true); this.dbIdentity.setSupportsSequence(false); + + this.dbDefaultValue.setNow("now(6)"); // must have same precision as TIMESTAMP + this.dbDefaultValue.setFalse("0"); + this.dbDefaultValue.setTrue("1"); + this.exceptionTranslator = new SqlErrorCodes() @@ -52,8 +57,8 @@ public class MySqlPlatform extends DatabasePlatform { this.forwardOnlyHintOnFindIterate = true; this.booleanDbType = Types.BIT; - dbTypeMap.put(DbType.BIT, new DbPlatformType("tinyint(1) default 0")); - dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("tinyint(1) default 0")); + dbTypeMap.put(DbType.BIT, new DbPlatformType("tinyint(1)")); + dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("tinyint(1)")); dbTypeMap.put(DbType.TIMESTAMP, new DbPlatformType("datetime(6)")); dbTypeMap.put(DbType.CLOB, new MySqlClob()); dbTypeMap.put(DbType.BLOB, new MySqlBlob()); diff --git a/src/main/java/io/ebean/config/dbplatform/oracle/OraclePlatform.java b/src/main/java/io/ebean/config/dbplatform/oracle/OraclePlatform.java index b73f8091a..3eae9a8c6 100644 --- a/src/main/java/io/ebean/config/dbplatform/oracle/OraclePlatform.java +++ b/src/main/java/io/ebean/config/dbplatform/oracle/OraclePlatform.java @@ -35,6 +35,10 @@ public class OraclePlatform extends DatabasePlatform { dbIdentity.setSupportsIdentity(true); dbIdentity.setSupportsGetGeneratedKeys(true); + this.dbDefaultValue.setFalse("0"); + this.dbDefaultValue.setTrue("1"); + this.dbDefaultValue.setNow("current_timestamp"); + this.treatEmptyStringsAsNull = true; this.likeClauseRaw = "like ?"; @@ -49,7 +53,7 @@ public class OraclePlatform extends DatabasePlatform { this.closeQuote = "\""; booleanDbType = Types.INTEGER; - dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("number(1) default 0")); + dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("number(1)")); dbTypeMap.put(DbType.INTEGER, new DbPlatformType("number", 10)); dbTypeMap.put(DbType.BIGINT, new DbPlatformType("number", 19)); diff --git a/src/main/java/io/ebean/config/dbplatform/postgres/PostgresPlatform.java b/src/main/java/io/ebean/config/dbplatform/postgres/PostgresPlatform.java index 20d9107d1..9a9b584fd 100644 --- a/src/main/java/io/ebean/config/dbplatform/postgres/PostgresPlatform.java +++ b/src/main/java/io/ebean/config/dbplatform/postgres/PostgresPlatform.java @@ -39,6 +39,8 @@ public class PostgresPlatform extends DatabasePlatform { this.dbIdentity.setSupportsGetGeneratedKeys(true); this.dbIdentity.setSupportsSequence(true); + this.dbDefaultValue.setNow("current_timestamp"); + this.exceptionTranslator = new SqlErrorCodes() .addAcquireLock("55P03") diff --git a/src/main/java/io/ebean/config/dbplatform/sqlanywhere/SqlAnywherePlatform.java b/src/main/java/io/ebean/config/dbplatform/sqlanywhere/SqlAnywherePlatform.java index 045eeab30..7ca86a219 100644 --- a/src/main/java/io/ebean/config/dbplatform/sqlanywhere/SqlAnywherePlatform.java +++ b/src/main/java/io/ebean/config/dbplatform/sqlanywhere/SqlAnywherePlatform.java @@ -27,7 +27,7 @@ public class SqlAnywherePlatform extends DatabasePlatform { this.dbIdentity.setSelectLastInsertedIdTemplate("select @@IDENTITY as X"); this.dbIdentity.setSupportsIdentity(true); - dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("bit default 0")); + dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("bit")); dbTypeMap.put(DbType.BIGINT, new DbPlatformType("numeric", 19)); dbTypeMap.put(DbType.REAL, new DbPlatformType("float(16)")); dbTypeMap.put(DbType.DOUBLE, new DbPlatformType("float(32)")); diff --git a/src/main/java/io/ebean/config/dbplatform/sqlite/SQLitePlatform.java b/src/main/java/io/ebean/config/dbplatform/sqlite/SQLitePlatform.java index b4957f6d1..2e15fd007 100644 --- a/src/main/java/io/ebean/config/dbplatform/sqlite/SQLitePlatform.java +++ b/src/main/java/io/ebean/config/dbplatform/sqlite/SQLitePlatform.java @@ -21,9 +21,12 @@ public class SQLitePlatform extends DatabasePlatform { this.booleanDbType = Types.INTEGER; this.likeClauseRaw = "like ?"; this.likeClauseEscaped = "like ?"; + this.dbDefaultValue.setFalse("0"); + this.dbDefaultValue.setTrue("1"); + this.dbDefaultValue.setNow("CURRENT_TIMESTAMP"); - dbTypeMap.put(DbType.BIT, new DbPlatformType("int default 0")); - dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("int default 0")); + dbTypeMap.put(DbType.BIT, new DbPlatformType("int")); + dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("int")); dbTypeMap.put(DbType.BIGINT, new DbPlatformType("integer")); dbTypeMap.put(DbType.SMALLINT, new DbPlatformType("integer")); } diff --git a/src/main/java/io/ebean/config/dbplatform/sqlserver/SqlServerPlatform.java b/src/main/java/io/ebean/config/dbplatform/sqlserver/SqlServerPlatform.java index 102a7e0d5..31e1a8525 100644 --- a/src/main/java/io/ebean/config/dbplatform/sqlserver/SqlServerPlatform.java +++ b/src/main/java/io/ebean/config/dbplatform/sqlserver/SqlServerPlatform.java @@ -51,7 +51,10 @@ public class SqlServerPlatform extends DatabasePlatform { this.likeClauseEscaped = "like ? collate Latin1_General_BIN"; booleanDbType = Types.INTEGER; - dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("bit default 0")); + this.dbDefaultValue.setFalse("0"); + this.dbDefaultValue.setTrue("1"); + this.dbDefaultValue.setNow("SYSUTCDATETIME()"); + dbTypeMap.put(DbType.BOOLEAN, new DbPlatformType("bit")); dbTypeMap.put(DbType.INTEGER, new DbPlatformType("integer", false)); dbTypeMap.put(DbType.BIGINT, new DbPlatformType("numeric", 19)); diff --git a/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/DB2Ddl.java b/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/DB2Ddl.java index 17a463d60..d3cf92028 100644 --- a/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/DB2Ddl.java +++ b/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/DB2Ddl.java @@ -1,5 +1,6 @@ package io.ebeaninternal.dbmigration.ddlgeneration.platform; +import io.ebean.annotation.ConstraintMode; import io.ebean.config.dbplatform.DatabasePlatform; /** @@ -27,4 +28,9 @@ public class DB2Ddl extends PlatformDdl { } } + @Override + protected void appendForeignKeyOnUpdate(StringBuilder buffer, ConstraintMode mode) { + // do nothing, no on update clause for db2 + } + } diff --git a/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl.java b/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl.java index db37454c6..512d6efc2 100644 --- a/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl.java +++ b/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl.java @@ -213,7 +213,7 @@ public class PlatformDdl { buffer.append(" "); buffer.append(lowerColumnName(column.getName()), 29); buffer.append(platformType); - if (!Boolean.TRUE.equals(column.isPrimaryKey()) && !typeContainsDefault(platformType)) { + if (!Boolean.TRUE.equals(column.isPrimaryKey())) { String defaultValue = convertDefaultValue(column.getDefaultValue()); if (defaultValue != null) { buffer.append(" default ").append(defaultValue); @@ -227,13 +227,6 @@ public class PlatformDdl { // so that the database can potentially provide a nice SQL error } - /** - * Return true if the type definition already contains a default value. - */ - private boolean typeContainsDefault(String platformType) { - return platformType.toLowerCase().contains(" default"); - } - /** * Convert the DB column default literal to platform specific. */ @@ -449,17 +442,14 @@ public class PlatformDdl { .append(" ").append(convertedType); if (!onHistoryTable) { - if (isTrue(column.isNotnull())) { - buffer.append(" not null"); - } if (defaultValue != null) { - if (typeContainsDefault(convertedType)) { - logger.error("Cannot set default value for '" + tableName + "." + column.getName() + "'"); - } else { - buffer.append(" default "); - buffer.append(defaultValue); - } + buffer.append(" default "); + buffer.append(defaultValue); + } + + if (isTrue(column.isNotnull())) { + buffer.append(" not null"); } buffer.endOfStatement(); diff --git a/src/test/java/io/ebean/config/dbplatform/MySqlPlatformTest.java b/src/test/java/io/ebean/config/dbplatform/MySqlPlatformTest.java index 74a789348..ed0fc2bf9 100644 --- a/src/test/java/io/ebean/config/dbplatform/MySqlPlatformTest.java +++ b/src/test/java/io/ebean/config/dbplatform/MySqlPlatformTest.java @@ -20,8 +20,8 @@ public class MySqlPlatformTest { assertThat(ddl.convert("json", false)).isEqualTo("longtext"); assertThat(ddl.convert("jsonb", false)).isEqualTo("longtext"); assertThat(ddl.convert("varchar(20)", false)).isEqualTo("varchar(20)"); - assertThat(ddl.convert("boolean", false)).isEqualTo("tinyint(1) default 0"); - assertThat(ddl.convert("bit", false)).isEqualTo("tinyint(1) default 0"); + assertThat(ddl.convert("boolean", false)).isEqualTo("tinyint(1)"); + assertThat(ddl.convert("bit", false)).isEqualTo("tinyint(1)"); } @Test diff --git a/src/test/java/io/ebean/config/dbplatform/OraclePlatformTest.java b/src/test/java/io/ebean/config/dbplatform/OraclePlatformTest.java index 4f21ae90c..11da787e2 100644 --- a/src/test/java/io/ebean/config/dbplatform/OraclePlatformTest.java +++ b/src/test/java/io/ebean/config/dbplatform/OraclePlatformTest.java @@ -27,7 +27,7 @@ public class OraclePlatformTest { assertThat(ddl.convert("varchar(20)", false)).isEqualTo("varchar2(20)"); assertThat(ddl.convert("decimal(10)", false)).isEqualTo("number(10)"); assertThat(ddl.convert("decimal(8,4)", false)).isEqualTo("number(8,4)"); - assertThat(ddl.convert("boolean", false)).isEqualTo("number(1) default 0"); + assertThat(ddl.convert("boolean", false)).isEqualTo("number(1)"); assertThat(ddl.convert("bit", false)).isEqualTo("bit"); assertThat(ddl.convert("tinyint", false)).isEqualTo("number(3)"); assertThat(ddl.convert("binary(16)", false)).isEqualTo("raw(16)"); diff --git a/src/test/resources/dbmigration/migrationtest/db2/1.0__initial.sql b/src/test/resources/dbmigration/migrationtest/db2/1.0__initial.sql index ebd35cdcf..2ed9f31ab 100644 --- a/src/test/resources/dbmigration/migrationtest/db2/1.0__initial.sql +++ b/src/test/resources/dbmigration/migrationtest/db2/1.0__initial.sql @@ -81,12 +81,12 @@ create table migtest_e_softdelete ( create index ix_migtest_e_basic_indextest1 on migtest_e_basic (indextest1); create index ix_migtest_e_basic_indextest5 on migtest_e_basic (indextest5); -alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete cascade on update cascade; +alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete cascade; create index ix_migtest_fk_cascade_one_id on migtest_fk_cascade (one_id); -alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update set null; +alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null; create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); -alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; +alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict; create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); diff --git a/src/test/resources/dbmigration/migrationtest/db2/1.1.sql b/src/test/resources/dbmigration/migrationtest/db2/1.1.sql index 26650c8ff..2304caa0c 100644 --- a/src/test/resources/dbmigration/migrationtest/db2/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/db2/1.1.sql @@ -6,11 +6,11 @@ create table migtest_e_user ( ); alter table migtest_fk_cascade drop constraint fk_migtest_fk_cascade_one_id; -alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete restrict on update restrict; -alter table migtest_fk_none add constraint fk_migtest_fk_none_one_id foreign key (one_id) references migtest_fk_one (id) on delete restrict on update restrict; -alter table migtest_fk_none_via_join add constraint fk_migtest_fk_none_via_join_one_id foreign key (one_id) references migtest_fk_one (id) on delete restrict on update restrict; +alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete restrict; +alter table migtest_fk_none add constraint fk_migtest_fk_none_one_id foreign key (one_id) references migtest_fk_one (id) on delete restrict; +alter table migtest_fk_none_via_join add constraint fk_migtest_fk_none_via_join_one_id foreign key (one_id) references migtest_fk_one (id) on delete restrict; alter table migtest_fk_set_null drop constraint fk_migtest_fk_set_null_one_id; -alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete restrict on update restrict; +alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete restrict; update migtest_e_basic set status = 'A' where status is null; alter table migtest_e_basic drop constraint ck_migtest_e_basic_status; @@ -26,16 +26,16 @@ alter table migtest_e_basic alter column some_date set default '2000-01-01T00:00 alter table migtest_e_basic alter column some_date set not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; -alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id) on delete restrict on update restrict; +alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id) on delete restrict; alter table migtest_e_basic alter column user_id set null; -alter table migtest_e_basic add column new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field boolean not null default true; +alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field boolean default true not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 boolean not null default true; -alter table migtest_e_basic add column progress integer not null default 0; +alter table migtest_e_basic add column new_boolean_field2 boolean default true not null; +alter table migtest_e_basic add column progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer integer not null default 42; +alter table migtest_e_basic add column new_integer integer default 42 not null; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6; @@ -50,11 +50,11 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 alter column test_string set default 'unknown'; alter table migtest_e_history2 alter column test_string set not null; alter table migtest_e_history2 add column test_string2 varchar(255); -alter table migtest_e_history2 add column test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_history2_history add column test_string2 varchar(255); alter table migtest_e_history2_history add column test_string3 varchar(255); -alter table migtest_e_softdelete add column deleted boolean not null default false; +alter table migtest_e_softdelete add column deleted boolean default false not null; create index ix_migtest_e_basic_indextest3 on migtest_e_basic (indextest3); create index ix_migtest_e_basic_indextest6 on migtest_e_basic (indextest6); diff --git a/src/test/resources/dbmigration/migrationtest/db2/1.3.sql b/src/test/resources/dbmigration/migrationtest/db2/1.3.sql index d8c19fa03..e99cc4048 100644 --- a/src/test/resources/dbmigration/migrationtest/db2/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/db2/1.3.sql @@ -6,11 +6,11 @@ create table migtest_e_ref ( ); alter table migtest_fk_cascade drop constraint fk_migtest_fk_cascade_one_id; -alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete cascade on update cascade; +alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete cascade; alter table migtest_fk_none drop constraint fk_migtest_fk_none_one_id; alter table migtest_fk_none_via_join drop constraint fk_migtest_fk_none_via_join_one_id; alter table migtest_fk_set_null drop constraint fk_migtest_fk_set_null_one_id; -alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update set null; +alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null; alter table migtest_e_basic drop constraint ck_migtest_e_basic_status; alter table migtest_e_basic alter column status drop default; alter table migtest_e_basic alter column status set null; @@ -23,7 +23,7 @@ update migtest_e_basic set user_id = 23 where user_id is null; alter table migtest_e_basic drop constraint fk_migtest_e_basic_user_id; alter table migtest_e_basic alter column user_id set default 23; alter table migtest_e_basic alter column user_id set not null; -alter table migtest_e_basic add column old_boolean boolean not null default false; +alter table migtest_e_basic add column old_boolean boolean default false not null; alter table migtest_e_basic add column old_boolean2 boolean; alter table migtest_e_basic add column eref_id integer; @@ -40,6 +40,6 @@ create index ix_migtest_e_basic_indextest1 on migtest_e_basic (indextest1); create index ix_migtest_e_basic_indextest5 on migtest_e_basic (indextest5); drop index ix_migtest_e_basic_indextest3; drop index ix_migtest_e_basic_indextest6; -alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; +alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict; create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); diff --git a/src/test/resources/dbmigration/migrationtest/h2/1.1.sql b/src/test/resources/dbmigration/migrationtest/h2/1.1.sql index 733391e0f..e786f4ecc 100644 --- a/src/test/resources/dbmigration/migrationtest/h2/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/h2/1.1.sql @@ -28,14 +28,14 @@ alter table migtest_e_basic alter column some_date set not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id) on delete restrict on update restrict; alter table migtest_e_basic alter column user_id set null; -alter table migtest_e_basic add column new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field boolean not null default true; +alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field boolean default true not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 boolean not null default true; -alter table migtest_e_basic add column progress integer not null default 0; +alter table migtest_e_basic add column new_boolean_field2 boolean default true not null; +alter table migtest_e_basic add column progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer integer not null default 42; +alter table migtest_e_basic add column new_integer integer default 42 not null; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6; @@ -50,11 +50,11 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 alter column test_string set default 'unknown'; alter table migtest_e_history2 alter column test_string set not null; alter table migtest_e_history2 add column test_string2 varchar(255); -alter table migtest_e_history2 add column test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_history2_history add column test_string2 varchar(255); alter table migtest_e_history2_history add column test_string3 varchar(255); -alter table migtest_e_softdelete add column deleted boolean not null default false; +alter table migtest_e_softdelete add column deleted boolean default false not null; create index ix_migtest_e_basic_indextest3 on migtest_e_basic (indextest3); create index ix_migtest_e_basic_indextest6 on migtest_e_basic (indextest6); diff --git a/src/test/resources/dbmigration/migrationtest/h2/1.3.sql b/src/test/resources/dbmigration/migrationtest/h2/1.3.sql index e096649a9..9f3c659df 100644 --- a/src/test/resources/dbmigration/migrationtest/h2/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/h2/1.3.sql @@ -23,7 +23,7 @@ update migtest_e_basic set user_id = 23 where user_id is null; alter table migtest_e_basic drop constraint if exists fk_migtest_e_basic_user_id; alter table migtest_e_basic alter column user_id set default 23; alter table migtest_e_basic alter column user_id set not null; -alter table migtest_e_basic add column old_boolean boolean not null default false; +alter table migtest_e_basic add column old_boolean boolean default false not null; alter table migtest_e_basic add column old_boolean2 boolean; alter table migtest_e_basic add column eref_id integer; diff --git a/src/test/resources/dbmigration/migrationtest/hsqldb/1.1.sql b/src/test/resources/dbmigration/migrationtest/hsqldb/1.1.sql index 8fcfa6dbe..3c48db53c 100644 --- a/src/test/resources/dbmigration/migrationtest/hsqldb/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/hsqldb/1.1.sql @@ -28,14 +28,14 @@ alter table migtest_e_basic alter column some_date set not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id) on delete restrict on update restrict; alter table migtest_e_basic alter column user_id set null; -alter table migtest_e_basic add column new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field boolean not null default true; +alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field boolean default true not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 boolean not null default true; -alter table migtest_e_basic add column progress integer not null default 0; +alter table migtest_e_basic add column new_boolean_field2 boolean default true not null; +alter table migtest_e_basic add column progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer integer not null default 42; +alter table migtest_e_basic add column new_integer integer default 42 not null; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6; @@ -50,11 +50,11 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 alter column test_string set default 'unknown'; alter table migtest_e_history2 alter column test_string set not null; alter table migtest_e_history2 add column test_string2 varchar(255); -alter table migtest_e_history2 add column test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_history2_history add column test_string2 varchar(255); alter table migtest_e_history2_history add column test_string3 varchar(255); -alter table migtest_e_softdelete add column deleted boolean not null default false; +alter table migtest_e_softdelete add column deleted boolean default false not null; create index ix_migtest_e_basic_indextest3 on migtest_e_basic (indextest3); create index ix_migtest_e_basic_indextest6 on migtest_e_basic (indextest6); diff --git a/src/test/resources/dbmigration/migrationtest/hsqldb/1.3.sql b/src/test/resources/dbmigration/migrationtest/hsqldb/1.3.sql index 4f2436cbd..d89e67fd1 100644 --- a/src/test/resources/dbmigration/migrationtest/hsqldb/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/hsqldb/1.3.sql @@ -23,7 +23,7 @@ update migtest_e_basic set user_id = 23 where user_id is null; alter table migtest_e_basic drop constraint if exists fk_migtest_e_basic_user_id; alter table migtest_e_basic alter column user_id set default 23; alter table migtest_e_basic alter column user_id set not null; -alter table migtest_e_basic add column old_boolean boolean not null default false; +alter table migtest_e_basic add column old_boolean boolean default false not null; alter table migtest_e_basic add column old_boolean2 boolean; alter table migtest_e_basic add column eref_id integer; diff --git a/src/test/resources/dbmigration/migrationtest/mysql/1.0__initial.sql b/src/test/resources/dbmigration/migrationtest/mysql/1.0__initial.sql index 7bfa87ed5..8d5563048 100644 --- a/src/test/resources/dbmigration/migrationtest/mysql/1.0__initial.sql +++ b/src/test/resources/dbmigration/migrationtest/mysql/1.0__initial.sql @@ -41,7 +41,7 @@ create table migtest_e_basic ( description varchar(127), some_date datetime(6), old_boolean tinyint(1) default 0 not null, - old_boolean2 tinyint(1) default 0, + old_boolean2 tinyint(1), eref_id integer, indextest1 varchar(127), indextest2 varchar(127), diff --git a/src/test/resources/dbmigration/migrationtest/mysql/1.1.sql b/src/test/resources/dbmigration/migrationtest/mysql/1.1.sql index 9025e83c4..3fc961b1a 100644 --- a/src/test/resources/dbmigration/migrationtest/mysql/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/mysql/1.1.sql @@ -27,14 +27,14 @@ alter table migtest_e_basic modify some_date datetime(6) not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id) on delete restrict on update restrict; alter table migtest_e_basic modify user_id integer; -alter table migtest_e_basic add column new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field tinyint(1) default 0 not null; +alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field tinyint(1) default 1 not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 tinyint(1) default 0 not null; -alter table migtest_e_basic add column progress integer not null default 0; +alter table migtest_e_basic add column new_boolean_field2 tinyint(1) default 1 not null; +alter table migtest_e_basic add column progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer integer not null default 42; +alter table migtest_e_basic add column new_integer integer default 42 not null; alter table migtest_e_basic drop index uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop index uq_migtest_e_basic_indextest6; @@ -48,7 +48,7 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 alter test_string set default 'unknown'; alter table migtest_e_history2 modify test_string varchar(255) not null; alter table migtest_e_history2 add column test_string2 varchar(255); -alter table migtest_e_history2 add column test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_history2_history add column test_string2 varchar(255); alter table migtest_e_history2_history add column test_string3 varchar(255); diff --git a/src/test/resources/dbmigration/migrationtest/mysql/1.3.sql b/src/test/resources/dbmigration/migrationtest/mysql/1.3.sql index 6a4f5c74d..a408ec0f3 100644 --- a/src/test/resources/dbmigration/migrationtest/mysql/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/mysql/1.3.sql @@ -21,7 +21,7 @@ alter table migtest_e_basic drop foreign key fk_migtest_e_basic_user_id; alter table migtest_e_basic alter user_id set default 23; alter table migtest_e_basic modify user_id integer not null; alter table migtest_e_basic add column old_boolean tinyint(1) default 0 not null; -alter table migtest_e_basic add column old_boolean2 tinyint(1) default 0; +alter table migtest_e_basic add column old_boolean2 tinyint(1); alter table migtest_e_basic add column eref_id integer; alter table migtest_e_basic drop index uq_migtest_e_basic_name; diff --git a/src/test/resources/dbmigration/migrationtest/oracle/1.0__initial.sql b/src/test/resources/dbmigration/migrationtest/oracle/1.0__initial.sql index d621493ff..fce202026 100644 --- a/src/test/resources/dbmigration/migrationtest/oracle/1.0__initial.sql +++ b/src/test/resources/dbmigration/migrationtest/oracle/1.0__initial.sql @@ -47,7 +47,7 @@ create table migtest_e_basic ( description varchar2(127), some_date timestamp, old_boolean number(1) default 0 not null, - old_boolean2 number(1) default 0, + old_boolean2 number(1), eref_id number(10), indextest1 varchar2(127), indextest2 varchar2(127), diff --git a/src/test/resources/dbmigration/migrationtest/oracle/1.1.sql b/src/test/resources/dbmigration/migrationtest/oracle/1.1.sql index 99bf46431..6f280989f 100644 --- a/src/test/resources/dbmigration/migrationtest/oracle/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/oracle/1.1.sql @@ -29,14 +29,14 @@ alter table migtest_e_basic modify some_date not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id); alter table migtest_e_basic modify user_id null; -alter table migtest_e_basic add column new_string_field varchar2(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field number(1) default 0 not null; +alter table migtest_e_basic add column new_string_field varchar2(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field number(1) default 1 not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 number(1) default 0 not null; -alter table migtest_e_basic add column progress number(10) not null default 0; +alter table migtest_e_basic add column new_boolean_field2 number(1) default 1 not null; +alter table migtest_e_basic add column progress number(10) default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer number(10) not null default 42; +alter table migtest_e_basic add column new_integer number(10) default 42 not null; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6; @@ -51,7 +51,7 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 modify test_string default 'unknown'; alter table migtest_e_history2 modify test_string not null; alter table migtest_e_history2 add column test_string2 varchar2(255); -alter table migtest_e_history2 add column test_string3 varchar2(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar2(255) default 'unknown' not null; alter table migtest_e_softdelete add column deleted number(1) default 0 not null; diff --git a/src/test/resources/dbmigration/migrationtest/oracle/1.3.sql b/src/test/resources/dbmigration/migrationtest/oracle/1.3.sql index 60e6bbf6a..f5cc85a85 100644 --- a/src/test/resources/dbmigration/migrationtest/oracle/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/oracle/1.3.sql @@ -25,7 +25,7 @@ alter table migtest_e_basic drop constraint fk_migtest_e_basic_user_id; alter table migtest_e_basic modify user_id default 23; alter table migtest_e_basic modify user_id not null; alter table migtest_e_basic add column old_boolean number(1) default 0 not null; -alter table migtest_e_basic add column old_boolean2 number(1) default 0; +alter table migtest_e_basic add column old_boolean2 number(1); alter table migtest_e_basic add column eref_id number(10); alter table migtest_e_basic drop constraint uq_migtest_e_basic_name; diff --git a/src/test/resources/dbmigration/migrationtest/postgres/1.1.sql b/src/test/resources/dbmigration/migrationtest/postgres/1.1.sql index d26dab182..21b6c7129 100644 --- a/src/test/resources/dbmigration/migrationtest/postgres/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/postgres/1.1.sql @@ -31,14 +31,14 @@ alter table migtest_e_basic alter column some_date set not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id) on delete restrict on update restrict; alter table migtest_e_basic alter column user_id drop not null; -alter table migtest_e_basic add column new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field boolean not null default true; +alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field boolean default true not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 boolean not null default true; -alter table migtest_e_basic add column progress integer not null default 0; +alter table migtest_e_basic add column new_boolean_field2 boolean default true not null; +alter table migtest_e_basic add column progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer integer not null default 42; +alter table migtest_e_basic add column new_integer integer default 42 not null; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6; @@ -55,11 +55,11 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 alter column test_string set default 'unknown'; alter table migtest_e_history2 alter column test_string set not null; alter table migtest_e_history2 add column test_string2 varchar(255); -alter table migtest_e_history2 add column test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_history2_history add column test_string2 varchar(255); alter table migtest_e_history2_history add column test_string3 varchar(255); -alter table migtest_e_softdelete add column deleted boolean not null default false; +alter table migtest_e_softdelete add column deleted boolean default false not null; create index ix_migtest_e_basic_indextest3 on migtest_e_basic (indextest3); create index ix_migtest_e_basic_indextest6 on migtest_e_basic (indextest6); diff --git a/src/test/resources/dbmigration/migrationtest/postgres/1.3.sql b/src/test/resources/dbmigration/migrationtest/postgres/1.3.sql index e68509998..a68497900 100644 --- a/src/test/resources/dbmigration/migrationtest/postgres/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/postgres/1.3.sql @@ -23,7 +23,7 @@ update migtest_e_basic set user_id = 23 where user_id is null; alter table if exists migtest_e_basic drop constraint if exists fk_migtest_e_basic_user_id; alter table migtest_e_basic alter column user_id set default 23; alter table migtest_e_basic alter column user_id set not null; -alter table migtest_e_basic add column old_boolean boolean not null default false; +alter table migtest_e_basic add column old_boolean boolean default false not null; alter table migtest_e_basic add column old_boolean2 boolean; alter table migtest_e_basic add column eref_id integer; diff --git a/src/test/resources/dbmigration/migrationtest/sqlite/1.0__initial.sql b/src/test/resources/dbmigration/migrationtest/sqlite/1.0__initial.sql index cf4fd1839..7817850a0 100644 --- a/src/test/resources/dbmigration/migrationtest/sqlite/1.0__initial.sql +++ b/src/test/resources/dbmigration/migrationtest/sqlite/1.0__initial.sql @@ -43,7 +43,7 @@ create table migtest_e_basic ( description varchar(127), some_date timestamp, old_boolean int default 0 not null, - old_boolean2 int default 0, + old_boolean2 int, eref_id integer, indextest1 varchar(127), indextest2 varchar(127), diff --git a/src/test/resources/dbmigration/migrationtest/sqlite/1.1.sql b/src/test/resources/dbmigration/migrationtest/sqlite/1.1.sql index f1e14b4fb..6bfca30fe 100644 --- a/src/test/resources/dbmigration/migrationtest/sqlite/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/sqlite/1.1.sql @@ -23,14 +23,14 @@ alter table migtest_e_basic alter column some_date set not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic alter column user_id set null; -alter table migtest_e_basic add column new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add column new_boolean_field int default 0 not null; +alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add column new_boolean_field int default 1 not null; update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add column new_boolean_field2 int default 0 not null; -alter table migtest_e_basic add column progress integer not null default 0; +alter table migtest_e_basic add column new_boolean_field2 int default 1 not null; +alter table migtest_e_basic add column progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add column new_integer integer not null default 42; +alter table migtest_e_basic add column new_integer integer default 42 not null; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6; @@ -43,7 +43,7 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 alter column test_string set default 'unknown'; alter table migtest_e_history2 alter column test_string set not null; alter table migtest_e_history2 add column test_string2 varchar(255); -alter table migtest_e_history2 add column test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_history2_history add column test_string2 varchar(255); alter table migtest_e_history2_history add column test_string3 varchar(255); diff --git a/src/test/resources/dbmigration/migrationtest/sqlite/1.3.sql b/src/test/resources/dbmigration/migrationtest/sqlite/1.3.sql index 262edf014..77f17afb5 100644 --- a/src/test/resources/dbmigration/migrationtest/sqlite/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/sqlite/1.3.sql @@ -22,7 +22,7 @@ alter table migtest_e_basic drop constraint if exists fk_migtest_e_basic_user_id alter table migtest_e_basic alter column user_id set default 23; alter table migtest_e_basic alter column user_id set not null; alter table migtest_e_basic add column old_boolean int default 0 not null; -alter table migtest_e_basic add column old_boolean2 int default 0; +alter table migtest_e_basic add column old_boolean2 int; alter table migtest_e_basic add column eref_id integer; alter table migtest_e_basic drop constraint uq_migtest_e_basic_name; diff --git a/src/test/resources/dbmigration/migrationtest/sqlserver/1.0__initial.sql b/src/test/resources/dbmigration/migrationtest/sqlserver/1.0__initial.sql index 70742f488..58a36d80e 100644 --- a/src/test/resources/dbmigration/migrationtest/sqlserver/1.0__initial.sql +++ b/src/test/resources/dbmigration/migrationtest/sqlserver/1.0__initial.sql @@ -5,41 +5,40 @@ create table migtest_fk_cascade ( one_id numeric(19), constraint pk_migtest_fk_cascade primary key (id) ); -create sequence migtest_fk_cascade_seq as bigint start with 1 increment by 50; +create sequence migtest_fk_cascade_seq as bigint start with 1 ; create table migtest_fk_cascade_one ( id numeric(19) not null, constraint pk_migtest_fk_cascade_one primary key (id) ); -create sequence migtest_fk_cascade_one_seq as bigint start with 1 increment by 50; +create sequence migtest_fk_cascade_one_seq as bigint start with 1 ; create table migtest_fk_none ( id numeric(19) not null, one_id numeric(19), constraint pk_migtest_fk_none primary key (id) ); -create sequence migtest_fk_none_seq as bigint start with 1 increment by 50; +create sequence migtest_fk_none_seq as bigint start with 1 ; create table migtest_fk_none_via_join ( id numeric(19) not null, one_id numeric(19), constraint pk_migtest_fk_none_via_join primary key (id) ); -create sequence migtest_fk_none_via_join_seq as bigint start with 1 increment by 50; +create sequence migtest_fk_none_via_join_seq as bigint start with 1 ; create table migtest_fk_one ( id numeric(19) not null, constraint pk_migtest_fk_one primary key (id) ); -create sequence migtest_fk_one_seq as bigint start with 1 increment by 50; - +create sequence migtest_fk_one_seq as bigint start with 1 ; create table migtest_fk_set_null ( id numeric(19) not null, one_id numeric(19), constraint pk_migtest_fk_set_null primary key (id) ); -create sequence migtest_fk_set_null_seq as bigint start with 1 increment by 50; +create sequence migtest_fk_set_null_seq as bigint start with 1 ; create table migtest_e_basic ( id integer not null, @@ -48,7 +47,7 @@ create table migtest_e_basic ( description varchar(127), some_date datetime2, old_boolean bit default 0 not null, - old_boolean2 bit default 0, + old_boolean2 bit, eref_id integer, indextest1 varchar(127), indextest2 varchar(127), @@ -62,34 +61,34 @@ create table migtest_e_basic ( ); create unique nonclustered index uq_migtest_e_basic_indextest2 on migtest_e_basic(indextest2) where indextest2 is not null; create unique nonclustered index uq_migtest_e_basic_indextest6 on migtest_e_basic(indextest6) where indextest6 is not null; -create sequence migtest_e_basic_seq as bigint start with 1 increment by 50; +create sequence migtest_e_basic_seq as bigint start with 1 ; create table migtest_e_history ( id integer not null, test_string varchar(255), constraint pk_migtest_e_history primary key (id) ); -create sequence pk_migtest_e_history_seq as bigint start with 1 increment by 50; +create sequence migtest_e_history_seq as bigint start with 1 ; create table migtest_e_history2 ( id integer not null, test_string varchar(255), constraint pk_migtest_e_history2 primary key (id) ); -create sequence migtest_e_history2_seq as bigint start with 1 increment by 50; +create sequence migtest_e_history2_seq as bigint start with 1 ; create table migtest_e_ref ( id integer not null, constraint pk_migtest_e_ref primary key (id) ); -create sequence migtest_e_ref_seq as bigint start with 1 increment by 50; +create sequence migtest_e_ref_seq as bigint start with 1 ; create table migtest_e_softdelete ( id integer not null, test_string varchar(255), constraint pk_migtest_e_softdelete primary key (id) ); -create sequence migtest_e_softdelete_seq as bigint start with 1 increment by 50; +create sequence migtest_e_softdelete_seq as bigint start with 1 ; create index ix_migtest_e_basic_indextest1 on migtest_e_basic (indextest1); create index ix_migtest_e_basic_indextest5 on migtest_e_basic (indextest5); diff --git a/src/test/resources/dbmigration/migrationtest/sqlserver/1.1.sql b/src/test/resources/dbmigration/migrationtest/sqlserver/1.1.sql index 9bdf6cdc6..b873a0152 100644 --- a/src/test/resources/dbmigration/migrationtest/sqlserver/1.1.sql +++ b/src/test/resources/dbmigration/migrationtest/sqlserver/1.1.sql @@ -4,7 +4,7 @@ create table migtest_e_user ( id integer not null, constraint pk_migtest_e_user primary key (id) ); -create sequence migtest_e_user_seq as bigint start with 1 increment by 50; +create sequence migtest_e_user_seq as bigint start with 1 ; IF OBJECT_ID('fk_migtest_fk_cascade_one_id', 'F') IS NOT NULL alter table migtest_fk_cascade drop constraint fk_migtest_fk_cascade_one_id; alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id); @@ -29,14 +29,14 @@ alter table migtest_e_basic alter column some_date datetime2 not null; insert into migtest_e_user (id) select distinct user_id from migtest_e_basic; alter table migtest_e_basic add constraint fk_migtest_e_basic_user_id foreign key (user_id) references migtest_e_user (id); alter table migtest_e_basic alter column user_id integer; -alter table migtest_e_basic add new_string_field varchar(255) not null default 'foo''bar'; -alter table migtest_e_basic add new_boolean_field bit default 0 not null; +alter table migtest_e_basic add new_string_field varchar(255) default 'foo''bar' not null; +alter table migtest_e_basic add new_boolean_field bit default 1 not null; update migtest_e_basic set new_boolean_field = old_boolean; alter table migtest_e_basic add new_boolean_field2 bit default 1 not null; -alter table migtest_e_basic add progress integer not null default 0; +alter table migtest_e_basic add progress integer default 0 not null; alter table migtest_e_basic add constraint ck_migtest_e_basic_progress check ( progress in (0,1,2)); -alter table migtest_e_basic add new_integer integer not null default 42; +alter table migtest_e_basic add new_integer integer default 42 not null; IF (OBJECT_ID('uq_migtest_e_basic_indextest2', 'UQ') IS NOT NULL) alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2; IF EXISTS (SELECT name FROM sys.indexes WHERE object_id = OBJECT_ID('migtest_e_basic','U') AND name = 'uq_migtest_e_basic_indextest2') drop index uq_migtest_e_basic_indextest2 ON migtest_e_basic; @@ -51,7 +51,7 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null; alter table migtest_e_history2 add default 'unknown' for test_string; alter table migtest_e_history2 alter column test_string varchar(255) not null; alter table migtest_e_history2 add test_string2 varchar(255); -alter table migtest_e_history2 add test_string3 varchar(255) not null default 'unknown'; +alter table migtest_e_history2 add test_string3 varchar(255) default 'unknown' not null; alter table migtest_e_softdelete add deleted bit default 0 not null; diff --git a/src/test/resources/dbmigration/migrationtest/sqlserver/1.3.sql b/src/test/resources/dbmigration/migrationtest/sqlserver/1.3.sql index c6add60d1..944c52349 100644 --- a/src/test/resources/dbmigration/migrationtest/sqlserver/1.3.sql +++ b/src/test/resources/dbmigration/migrationtest/sqlserver/1.3.sql @@ -1,10 +1,10 @@ -- Migrationscripts for ebean unittest -- apply changes create table migtest_e_ref ( - id integer identity(1,1) not null, + id integer not null, constraint pk_migtest_e_ref primary key (id) ); -create sequence migtest_e_ref_seq as bigint start with 1 increment by 50; +create sequence migtest_e_ref_seq as bigint start with 1 ; IF OBJECT_ID('fk_migtest_fk_cascade_one_id', 'F') IS NOT NULL alter table migtest_fk_cascade drop constraint fk_migtest_fk_cascade_one_id; alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id foreign key (one_id) references migtest_fk_cascade_one (id) on delete cascade on update cascade; @@ -32,7 +32,7 @@ IF OBJECT_ID('fk_migtest_e_basic_user_id', 'F') IS NOT NULL alter table migtest_ alter table migtest_e_basic add default 23 for user_id; alter table migtest_e_basic alter column user_id integer not null; alter table migtest_e_basic add old_boolean bit default 0 not null; -alter table migtest_e_basic add old_boolean2 bit default 0; +alter table migtest_e_basic add old_boolean2 bit; alter table migtest_e_basic add eref_id integer; IF (OBJECT_ID('uq_migtest_e_basic_name', 'UQ') IS NOT NULL) alter table migtest_e_basic drop constraint uq_migtest_e_basic_name;