From 790147e42d46e5fa8eb90246439af8ac6349f2fc Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Tue, 8 Mar 2022 17:28:39 +0100 Subject: [PATCH] Reviewed DDL changes - all changes are plausible --- .../migrationtest/dbmigration/hana/1.1.sql | 226 +++++++++--------- .../dbmigration/hana/1.2__dropsFor_1.1.sql | 16 +- .../migrationtest/dbmigration/hana/1.3.sql | 121 +++++----- .../dbmigration/hana/1.4__dropsFor_1.3.sql | 37 +-- .../dbmigration/hana/idx_hana.migrations | 8 +- 5 files changed, 192 insertions(+), 216 deletions(-) diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.1.sql index 0379b11ee..6e55680e3 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.1.sql @@ -1,4 +1,56 @@ -- Migrationscripts for ebean unittest +-- drop dependencies +alter table migtest_fk_cascade drop constraint fk_migtest_fk_cascade_one_id; +alter table migtest_fk_set_null drop constraint fk_migtest_fk_set_null_one_id; +delimiter $$ +do +begin +declare exit handler for sql_error_code 397 begin end; +exec 'alter table migtest_e_basic drop constraint ck_migtest_e_basic_status'; +end; +$$; +delimiter $$ +do +begin +declare exit handler for sql_error_code 397 begin end; +exec 'alter table migtest_e_basic drop constraint ck_migtest_e_basic_status2'; +end; +$$; +delimiter $$ +do +begin +declare exit handler for sql_error_code 397 begin end; +exec 'alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2'; +end; +$$; +delimiter $$ +do +begin +declare exit handler for sql_error_code 397 begin end; +exec 'alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6'; +end; +$$; +delimiter $$ +do +begin +declare exit handler for sql_error_code 397 begin end; +exec 'alter table migtest_e_enum drop constraint ck_migtest_e_enum_test_status'; +end; +$$; +delimiter $$ +do +begin +declare exit handler for sql_error_code 261 begin end; +exec 'drop index ix_migtest_e_basic_indextest1'; +end; +$$; +delimiter $$ +do +begin +declare exit handler for sql_error_code 261 begin end; +exec 'drop index ix_migtest_e_basic_indextest5'; +end; +$$; -- apply changes create column table migtest_e_user ( id integer generated by default as identity not null, @@ -22,139 +74,79 @@ create column table migtest_mtm_m_phone_numbers ( value nvarchar(255) not null ); -alter table migtest_ckey_detail add ( one_key integer); -alter table migtest_ckey_detail add ( two_key nvarchar(127)); -alter table migtest_ckey_detail add constraint fk_migtest_ckey_detail_parent foreign key (one_key,two_key) references migtest_ckey_parent (one_key,two_key) on delete restrict on update restrict; -alter table migtest_ckey_parent add ( assoc_id integer); -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_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; update migtest_e_basic set status = 'A' where status is null; -delimiter $$ -do -begin -declare exit handler for sql_error_code 397 begin end; -exec 'alter table migtest_e_basic drop constraint ck_migtest_e_basic_status'; -end; -$$; -alter table migtest_e_basic alter ( status nvarchar(1) default 'A' not null); -alter table migtest_e_basic add constraint ck_migtest_e_basic_status check ( status in ('N','A','I','?')); -delimiter $$ -do -begin -declare exit handler for sql_error_code 397 begin end; -exec 'alter table migtest_e_basic drop constraint ck_migtest_e_basic_status2'; -end; -$$; -alter table migtest_e_basic alter ( status2 nvarchar(127) default null); -- rename all collisions; --- cannot create unique index "uq_migtest_e_basic_description" on table "migtest_e_basic" with nullable columns; 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 ( user_id integer); -alter table migtest_e_basic add ( new_string_field nvarchar(255) default 'foo''bar' not null); -alter table migtest_e_basic add ( new_boolean_field boolean default true not null); + +alter table migtest_e_history2 drop system versioning; + +-- NOTE: table has @History - special migration may be necessary +update migtest_e_history2 set test_string = 'unknown' where test_string is null; + +alter table migtest_e_history3 drop system versioning; +alter table migtest_e_history4 drop system versioning; +alter table migtest_e_history5 drop system versioning; + +alter table migtest_e_history6 drop system versioning; + +-- NOTE: table has @History - special migration may be necessary +update migtest_e_history6 set test_number1 = 42 where test_number1 is null; + + +alter table migtest_ckey_detail add (one_key integer, + two_key nvarchar(127)); +alter table migtest_ckey_parent add (assoc_id integer); +alter table migtest_e_basic alter (status nvarchar(1) default 'A' not null, + status2 nvarchar(127) default null, + user_id integer); +alter table migtest_e_basic add (new_string_field nvarchar(255) default 'foo''bar' not null, + new_boolean_field boolean default true not null, + new_boolean_field2 boolean default true not null, + progress integer default 0 not null, + new_integer integer default 42 not null); +alter table migtest_e_history alter (test_string bigint); +alter table migtest_e_history2 alter (test_string nvarchar(255) default 'unknown' not null); +alter table migtest_e_history2 add (test_string2 nvarchar(255), + test_string3 nvarchar(255) default 'unknown' not null, + new_column nvarchar(20)); +alter table migtest_e_history2_history alter (test_string nvarchar(255) default 'unknown' not null); +alter table migtest_e_history2_history add (test_string2 nvarchar(255), + test_string3 nvarchar(255) default 'unknown', + new_column nvarchar(20)); +alter table migtest_e_history4 alter (test_number bigint); +alter table migtest_e_history4_history alter (test_number bigint); +alter table migtest_e_history5 add (test_boolean boolean default false not null); +alter table migtest_e_history5_history add (test_boolean boolean default false); +alter table migtest_e_history6 alter (test_number1 integer default 42 not null, + test_number2 integer); +alter table migtest_e_history6_history alter (test_number1 integer default 42 not null, + test_number2 integer); +alter table migtest_e_softdelete add (deleted boolean default false not null); +alter table migtest_oto_child add (master_id bigint); +alter table migtest_e_basic add constraint ck_migtest_e_basic_status check ( status in ('N','A','I','?')); +-- cannot create unique index "uq_migtest_e_basic_description" on table "migtest_e_basic" with nullable columns; +-- NOTE: table has @History - special migration may be necessary update migtest_e_basic set new_boolean_field = old_boolean; -alter table migtest_e_basic add ( new_boolean_field2 boolean default true not null); -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 default 42 not null); - -delimiter $$ -do -begin -declare exit handler for sql_error_code 397 begin end; -exec 'alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest2'; -end; -$$; -delimiter $$ -do -begin -declare exit handler for sql_error_code 397 begin end; -exec 'alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest6'; -end; -$$; -- cannot create unique index "uq_migtest_e_basic_status_indextest1" on table "migtest_e_basic" with nullable columns; -- cannot create unique index "uq_migtest_e_basic_name" on table "migtest_e_basic" with nullable columns; -- cannot create unique index "uq_migtest_e_basic_indextest4" on table "migtest_e_basic" with nullable columns; -- cannot create unique index "uq_migtest_e_basic_indextest5" on table "migtest_e_basic" with nullable columns; -delimiter $$ -do -begin -declare exit handler for sql_error_code 397 begin end; -exec 'alter table migtest_e_enum drop constraint ck_migtest_e_enum_test_status'; -end; -$$; comment on column migtest_e_history.test_string is 'Column altered to long now'; -alter table migtest_e_history alter ( test_string bigint); comment on table migtest_e_history is 'We have history now'; -alter table migtest_e_history2 drop system versioning /* 0 */; - --- NOTE: table has @History - special migration may be necessary -update migtest_e_history2 set test_string = 'unknown' where test_string is null; -alter table migtest_e_history2 alter ( test_string nvarchar(255) default 'unknown' not null); -alter table migtest_e_history2_history alter ( test_string nvarchar(255) default 'unknown' not null); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 1 */; -alter table migtest_e_history2 drop system versioning /* 2 */; -alter table migtest_e_history2 add ( test_string2 nvarchar(255)); -alter table migtest_e_history2 add ( test_string3 nvarchar(255) default 'unknown' not null); -alter table migtest_e_history2 add ( new_column nvarchar(20)); - -alter table migtest_e_history2_history add ( test_string2 nvarchar(255)); -alter table migtest_e_history2_history add ( test_string3 nvarchar(255) default 'unknown'); -alter table migtest_e_history2_history add ( new_column nvarchar(20)); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 3 */; -alter table migtest_e_history3 drop system versioning /* 4 */; -alter table migtest_e_history3 add system versioning history table migtest_e_history3_history not validated /* 5 */; -alter table migtest_e_history4 drop system versioning /* 6 */; -alter table migtest_e_history4 alter ( test_number bigint); -alter table migtest_e_history4_history alter ( test_number bigint); -alter table migtest_e_history4 add system versioning history table migtest_e_history4_history not validated /* 7 */; -alter table migtest_e_history5 drop system versioning /* 8 */; -alter table migtest_e_history5 add ( test_boolean boolean default false not null); - -alter table migtest_e_history5_history add ( test_boolean boolean default false); -alter table migtest_e_history5 add system versioning history table migtest_e_history5_history not validated /* 9 */; -alter table migtest_e_history6 drop system versioning /* 10 */; - --- NOTE: table has @History - special migration may be necessary -update migtest_e_history6 set test_number1 = 42 where test_number1 is null; -alter table migtest_e_history6 alter ( test_number1 integer default 42 not null); -alter table migtest_e_history6_history alter ( test_number1 integer default 42 not null); -alter table migtest_e_history6 add system versioning history table migtest_e_history6_history not validated /* 11 */; -alter table migtest_e_history6 drop system versioning /* 12 */; -alter table migtest_e_history6 alter ( test_number2 integer); -alter table migtest_e_history6_history alter ( test_number2 integer); -alter table migtest_e_history6 add system versioning history table migtest_e_history6_history not validated /* 13 */; -alter table migtest_e_softdelete add ( deleted boolean default false not null); - -alter table migtest_oto_child add ( master_id bigint); - +alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated; +alter table migtest_e_history3 add system versioning history table migtest_e_history3_history not validated; +alter table migtest_e_history4 add system versioning history table migtest_e_history4_history not validated; +alter table migtest_e_history5 add system versioning history table migtest_e_history5_history not validated; +alter table migtest_e_history6 add system versioning history table migtest_e_history6_history not validated; -- explicit index "ix_migtest_e_basic_indextest3" for single column "indextest3" of table "migtest_e_basic" is not necessary; -- explicit index "ix_migtest_e_basic_indextest6" for single column "indextest6" of table "migtest_e_basic" is not necessary; -delimiter $$ -do -begin -declare exit handler for sql_error_code 261 begin end; -exec 'drop index ix_migtest_e_basic_indextest1'; -end; -$$; -delimiter $$ -do -begin -declare exit handler for sql_error_code 261 begin end; -exec 'drop index ix_migtest_e_basic_indextest5'; -end; -$$; -- explicit index "ix_migtest_mtm_c_migtest_mtm_m_migtest_mtm_c" for single column "migtest_mtm_c_id" of table "migtest_mtm_c_migtest_mtm_m" is not necessary; alter table migtest_mtm_c_migtest_mtm_m add constraint fk_migtest_mtm_c_migtest_mtm_m_migtest_mtm_c foreign key (migtest_mtm_c_id) references migtest_mtm_c (id) on delete restrict on update restrict; @@ -170,9 +162,15 @@ alter table migtest_mtm_m_migtest_mtm_c add constraint fk_migtest_mtm_m_migtest_ -- explicit index "ix_migtest_mtm_m_phone_numbers_migtest_mtm_m_id" for single column "migtest_mtm_m_id" of table "migtest_mtm_m_phone_numbers" is not necessary; alter table migtest_mtm_m_phone_numbers add constraint fk_migtest_mtm_m_phone_numbers_migtest_mtm_m_id foreign key (migtest_mtm_m_id) references migtest_mtm_m (id) on delete restrict on update restrict; +alter table migtest_ckey_detail add constraint fk_migtest_ckey_detail_parent foreign key (one_key,two_key) references migtest_ckey_parent (one_key,two_key) on delete restrict on update restrict; -- explicit index "ix_migtest_ckey_parent_assoc_id" for single column "assoc_id" of table "migtest_ckey_parent" is not necessary; alter table migtest_ckey_parent add constraint fk_migtest_ckey_parent_assoc_id foreign key (assoc_id) references migtest_ckey_assoc (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 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_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_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_oto_child add constraint fk_migtest_oto_child_master_id foreign key (master_id) references migtest_oto_master (id) on delete restrict on update restrict; create column table migtest_e_history_history ( diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql index c50f9687c..01f71574e 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql @@ -1,21 +1,15 @@ -- Migrationscripts for ebean unittest -- apply changes +alter table migtest_e_history2 drop system versioning; + + CALL usp_ebean_drop_column('migtest_e_basic', 'description_file'); - CALL usp_ebean_drop_column('migtest_e_basic', 'old_boolean'); - CALL usp_ebean_drop_column('migtest_e_basic', 'old_boolean2'); - CALL usp_ebean_drop_column('migtest_e_basic', 'eref_id'); - -alter table migtest_e_history2 drop system versioning /* 0 */; CALL usp_ebean_drop_column('migtest_e_history2', 'obsolete_string1'); - -CALL usp_ebean_drop_column('migtest_e_history2_history', 'obsolete_string1'); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 1 */; -alter table migtest_e_history2 drop system versioning /* 2 */; CALL usp_ebean_drop_column('migtest_e_history2', 'obsolete_string2'); - +CALL usp_ebean_drop_column('migtest_e_history2_history', 'obsolete_string1'); CALL usp_ebean_drop_column('migtest_e_history2_history', 'obsolete_string2'); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 3 */; +alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated; drop table migtest_e_ref cascade; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.3.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.3.sql index c5ec29186..cf5fcfee7 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.3.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.3.sql @@ -1,19 +1,10 @@ -- Migrationscripts for ebean unittest --- apply changes -create column table migtest_e_ref ( - id integer generated by default as identity not null, - name nvarchar(127) not null, - constraint uq_migtest_e_ref_name unique (name), - constraint pk_migtest_e_ref primary key (id) -); - +-- drop dependencies alter table migtest_ckey_detail drop constraint fk_migtest_ckey_detail_parent; 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 restrict; 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 restrict; delimiter $$ do begin @@ -21,10 +12,6 @@ declare exit handler for sql_error_code 397 begin end; exec 'alter table migtest_e_basic drop constraint ck_migtest_e_basic_status'; end; $$; -alter table migtest_e_basic alter ( status nvarchar(1) default null); -alter table migtest_e_basic add constraint ck_migtest_e_basic_status check ( status in ('N','A','I')); - -update migtest_e_basic set status2 = 'N' where status2 is null; delimiter $$ do begin @@ -32,9 +19,6 @@ declare exit handler for sql_error_code 397 begin end; exec 'alter table migtest_e_basic drop constraint ck_migtest_e_basic_status2'; end; $$; -alter table migtest_e_basic alter ( status2 nclob not null); -alter table migtest_e_basic alter ( status2 nvarchar(1) default 'N' not null); -alter table migtest_e_basic add constraint ck_migtest_e_basic_status2 check ( status2 in ('N','A','I')); delimiter $$ do begin @@ -42,15 +26,7 @@ declare exit handler for sql_error_code 397 begin end; exec 'alter table migtest_e_basic drop constraint uq_migtest_e_basic_description'; end; $$; - -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 ( user_id integer default 23 not null); -alter table migtest_e_basic add ( description_file blob); -alter table migtest_e_basic add ( old_boolean boolean default false not null); -alter table migtest_e_basic add ( old_boolean2 boolean); -alter table migtest_e_basic add ( eref_id integer); - delimiter $$ do begin @@ -79,8 +55,6 @@ declare exit handler for sql_error_code 397 begin end; exec 'alter table migtest_e_basic drop constraint uq_migtest_e_basic_indextest5'; end; $$; --- cannot create unique index "uq_migtest_e_basic_indextest2" on table "migtest_e_basic" with nullable columns; --- cannot create unique index "uq_migtest_e_basic_indextest6" on table "migtest_e_basic" with nullable columns; delimiter $$ do begin @@ -88,41 +62,6 @@ declare exit handler for sql_error_code 397 begin end; exec 'alter table migtest_e_enum drop constraint ck_migtest_e_enum_test_status'; end; $$; -alter table migtest_e_enum add constraint ck_migtest_e_enum_test_status check ( test_status in ('N','A','I')); -comment on column migtest_e_history.test_string is ''; -comment on table migtest_e_history is ''; -alter table migtest_e_history2 drop system versioning /* 0 */; -alter table migtest_e_history2 alter ( test_string nvarchar(255) default null); -alter table migtest_e_history2_history alter ( test_string nvarchar(255) default null); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 1 */; -alter table migtest_e_history2 drop system versioning /* 2 */; -alter table migtest_e_history2 add ( obsolete_string1 nvarchar(255)); -alter table migtest_e_history2 add ( obsolete_string2 nvarchar(255)); - -alter table migtest_e_history2_history add ( obsolete_string1 nvarchar(255)); -alter table migtest_e_history2_history add ( obsolete_string2 nvarchar(255)); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 3 */; -alter table migtest_e_history3 drop system versioning /* 4 */; -alter table migtest_e_history3 add system versioning history table migtest_e_history3_history not validated /* 5 */; -alter table migtest_e_history4 drop system versioning /* 6 */; -alter table migtest_e_history4 alter ( test_number decimal ); -alter table migtest_e_history4 alter ( test_number integer); -alter table migtest_e_history4_history alter ( test_number decimal ); -alter table migtest_e_history4_history alter ( test_number integer); -alter table migtest_e_history4 add system versioning history table migtest_e_history4_history not validated /* 7 */; -alter table migtest_e_history6 drop system versioning /* 8 */; -alter table migtest_e_history6 alter ( test_number1 integer default null); -alter table migtest_e_history6_history alter ( test_number1 integer default null); -alter table migtest_e_history6 add system versioning history table migtest_e_history6_history not validated /* 9 */; -alter table migtest_e_history6 drop system versioning /* 10 */; - --- NOTE: table has @History - special migration may be necessary -update migtest_e_history6 set test_number2 = 7 where test_number2 is null; -alter table migtest_e_history6 alter ( test_number2 integer default 7 not null); -alter table migtest_e_history6_history alter ( test_number2 integer default 7 not null); -alter table migtest_e_history6 add system versioning history table migtest_e_history6_history not validated /* 11 */; --- explicit index "ix_migtest_e_basic_indextest1" for single column "indextest1" of table "migtest_e_basic" is not necessary; --- explicit index "ix_migtest_e_basic_indextest5" for single column "indextest5" of table "migtest_e_basic" is not necessary; delimiter $$ do begin @@ -137,6 +76,64 @@ declare exit handler for sql_error_code 261 begin end; exec 'drop index ix_migtest_e_basic_indextest6'; end; $$; +-- apply changes +create column table migtest_e_ref ( + id integer generated by default as identity not null, + name nvarchar(127) not null, + constraint uq_migtest_e_ref_name unique (name), + constraint pk_migtest_e_ref primary key (id) +); + + +update migtest_e_basic set status2 = 'N' where status2 is null; + +update migtest_e_basic set user_id = 23 where user_id is null; + +alter table migtest_e_history2 drop system versioning; + +alter table migtest_e_history3 drop system versioning; +alter table migtest_e_history4 drop system versioning; +alter table migtest_e_history6 drop system versioning; + +-- NOTE: table has @History - special migration may be necessary +update migtest_e_history6 set test_number2 = 7 where test_number2 is null; +alter table migtest_e_basic alter (status nvarchar(1) default null, + status2 nclob not null); +alter table migtest_e_basic alter (status2 nvarchar(1) default 'N' not null, + user_id integer default 23 not null); +alter table migtest_e_basic add (description_file blob, + old_boolean boolean default false not null, + old_boolean2 boolean, + eref_id integer); +alter table migtest_e_history2 alter (test_string nvarchar(255) default null); +alter table migtest_e_history2 add (obsolete_string1 nvarchar(255), + obsolete_string2 nvarchar(255)); +alter table migtest_e_history2_history alter (test_string nvarchar(255) default null); +alter table migtest_e_history2_history add (obsolete_string1 nvarchar(255), + obsolete_string2 nvarchar(255)); +alter table migtest_e_history4 alter (test_number decimal); +alter table migtest_e_history4 alter (test_number integer); +alter table migtest_e_history4_history alter (test_number decimal); +alter table migtest_e_history4_history alter (test_number integer); +alter table migtest_e_history6 alter (test_number1 integer default null, + test_number2 integer default 7 not null); +alter table migtest_e_history6_history alter (test_number1 integer default null, + test_number2 integer default 7 not null); +alter table migtest_e_basic add constraint ck_migtest_e_basic_status check ( status in ('N','A','I')); +alter table migtest_e_basic add constraint ck_migtest_e_basic_status2 check ( status2 in ('N','A','I')); +-- cannot create unique index "uq_migtest_e_basic_indextest2" on table "migtest_e_basic" with nullable columns; +-- cannot create unique index "uq_migtest_e_basic_indextest6" on table "migtest_e_basic" with nullable columns; +alter table migtest_e_enum add constraint ck_migtest_e_enum_test_status check ( test_status in ('N','A','I')); +comment on column migtest_e_history.test_string is ''; +comment on table migtest_e_history is ''; +alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated; +alter table migtest_e_history3 add system versioning history table migtest_e_history3_history not validated; +alter table migtest_e_history4 add system versioning history table migtest_e_history4_history not validated; +alter table migtest_e_history6 add system versioning history table migtest_e_history6_history not validated; +-- explicit index "ix_migtest_e_basic_indextest1" for single column "indextest1" of table "migtest_e_basic" is not necessary; +-- explicit index "ix_migtest_e_basic_indextest5" for single column "indextest5" of table "migtest_e_basic" is not necessary; +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 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 set null on update restrict; -- explicit index "ix_migtest_e_basic_eref_id" for single column "eref_id" of table "migtest_e_basic" is not necessary; 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; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.4__dropsFor_1.3.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.4__dropsFor_1.3.sql index 526dc7287..16c329132 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.4__dropsFor_1.3.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.4__dropsFor_1.3.sql @@ -4,48 +4,35 @@ alter table migtest_e_history drop system versioning; alter table migtest_e_history drop period for system_time; alter table migtest_e_history drop (sys_period_start,sys_period_end); drop table migtest_e_history_history cascade; - -- apply changes +alter table migtest_e_history2 drop system versioning; + + + +alter table migtest_e_history5 drop system versioning; + + + CALL usp_ebean_drop_column('migtest_ckey_detail', 'one_key'); - CALL usp_ebean_drop_column('migtest_ckey_detail', 'two_key'); - CALL usp_ebean_drop_column('migtest_ckey_parent', 'assoc_id'); - CALL usp_ebean_drop_column('migtest_e_basic', 'new_string_field'); - CALL usp_ebean_drop_column('migtest_e_basic', 'new_boolean_field'); - CALL usp_ebean_drop_column('migtest_e_basic', 'new_boolean_field2'); - CALL usp_ebean_drop_column('migtest_e_basic', 'progress'); - CALL usp_ebean_drop_column('migtest_e_basic', 'new_integer'); - -alter table migtest_e_history2 drop system versioning /* 0 */; CALL usp_ebean_drop_column('migtest_e_history2', 'test_string2'); - -CALL usp_ebean_drop_column('migtest_e_history2_history', 'test_string2'); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 1 */; -alter table migtest_e_history2 drop system versioning /* 2 */; CALL usp_ebean_drop_column('migtest_e_history2', 'test_string3'); - -CALL usp_ebean_drop_column('migtest_e_history2_history', 'test_string3'); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 3 */; -alter table migtest_e_history2 drop system versioning /* 4 */; CALL usp_ebean_drop_column('migtest_e_history2', 'new_column'); - +CALL usp_ebean_drop_column('migtest_e_history2_history', 'test_string2'); +CALL usp_ebean_drop_column('migtest_e_history2_history', 'test_string3'); CALL usp_ebean_drop_column('migtest_e_history2_history', 'new_column'); -alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated /* 5 */; -alter table migtest_e_history5 drop system versioning /* 6 */; CALL usp_ebean_drop_column('migtest_e_history5', 'test_boolean'); - CALL usp_ebean_drop_column('migtest_e_history5_history', 'test_boolean'); -alter table migtest_e_history5 add system versioning history table migtest_e_history5_history not validated /* 7 */; CALL usp_ebean_drop_column('migtest_e_softdelete', 'deleted'); - CALL usp_ebean_drop_column('migtest_oto_child', 'master_id'); - +alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated; +alter table migtest_e_history5 add system versioning history table migtest_e_history5_history not validated; drop table migtest_e_user cascade; drop table migtest_mtm_c_migtest_mtm_m cascade; drop table migtest_mtm_m_migtest_mtm_c cascade; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations index 8f4cc673e..bf6b1e14d 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations @@ -1,8 +1,8 @@ -745347271, I__create_procs.sql 513351138, 1.0__initial.sql --1152055114, 1.1.sql -1830946249, 1.2__dropsFor_1.1.sql -744723875, 1.3.sql -201970227, 1.4__dropsFor_1.3.sql +402034887, 1.1.sql +-40882406, 1.2__dropsFor_1.1.sql +1285995142, 1.3.sql +-212925879, 1.4__dropsFor_1.3.sql 1906063401, R__order_views_hana.sql