diff --git a/examples/migrations-demo/flyway-demo/pom.xml b/examples/migrations-demo/flyway-demo/pom.xml
index 4b2a13b9..1ef16525 100644
--- a/examples/migrations-demo/flyway-demo/pom.xml
+++ b/examples/migrations-demo/flyway-demo/pom.xml
@@ -11,12 +11,15 @@
org.springframework.boot
spring-boot-starter-parent
- 2.3.0.RELEASE
+ 3.1.3
+
- 11
- 11
+ 17
+ 17
+ 2.2.220
+ 2.0
@@ -36,6 +39,11 @@
${h2.version}
+
+ org.yaml
+ snakeyaml
+ ${snakeyaml.version}
+
org.flywaydb
diff --git a/examples/migrations-demo/flyway-demo/src/main/java/db/migration/AddUsersToCoursesReferenceTable.java b/examples/migrations-demo/flyway-demo/src/main/java/db/migration/AddUsersToCoursesReferenceTable.java
index 5f01b132..82b16405 100644
--- a/examples/migrations-demo/flyway-demo/src/main/java/db/migration/AddUsersToCoursesReferenceTable.java
+++ b/examples/migrations-demo/flyway-demo/src/main/java/db/migration/AddUsersToCoursesReferenceTable.java
@@ -16,8 +16,13 @@ public class AddUsersToCoursesReferenceTable implements JavaMigration {
DataSource ds = new SingleConnectionDataSource(context.getConnection(), true);
JdbcOperations jdbc = new JdbcTemplate(ds);
- jdbc.execute("create table users_courses(user_id bigint references users(id), " +
- "course_id bigint references courses(id))");
+ jdbc.execute("""
+ CREATE TABLE users_courses (
+ user_id bigint REFERENCES users(id),
+ course_id bigint REFERENCES courses(id),
+ PRIMARY KEY(user_id, course_id)
+ )
+ """);
}
@Override
@@ -35,11 +40,6 @@ public class AddUsersToCoursesReferenceTable implements JavaMigration {
return null;
}
- @Override
- public boolean isUndo() {
- return false;
- }
-
@Override
public boolean canExecuteInTransaction() {
return true;
diff --git a/examples/migrations-demo/flyway-demo/src/main/java/db/migration/V3_1__2020_05_26_Add_courses_table.java b/examples/migrations-demo/flyway-demo/src/main/java/db/migration/V3_1__2020_05_26_Add_courses_table.java
index 71aab47c..7f09bf44 100644
--- a/examples/migrations-demo/flyway-demo/src/main/java/db/migration/V3_1__2020_05_26_Add_courses_table.java
+++ b/examples/migrations-demo/flyway-demo/src/main/java/db/migration/V3_1__2020_05_26_Add_courses_table.java
@@ -14,6 +14,13 @@ public class V3_1__2020_05_26_Add_courses_table extends BaseJavaMigration {
public void migrate(Context context) throws Exception {
DataSource ds = new SingleConnectionDataSource(context.getConnection(), true);
JdbcOperations jdbc = new JdbcTemplate(ds);
- jdbc.execute("create table courses(id bigserial, name varchar(255))");
+
+ jdbc.execute("""
+ create table courses (
+ id bigserial,
+ name varchar(255),
+ primary key(id)
+ )
+ """);
}
}
diff --git a/examples/migrations-demo/flyway-demo/src/main/java/ru/otus/spring/config/AppConfig.java b/examples/migrations-demo/flyway-demo/src/main/java/ru/otus/spring/config/AppConfig.java
index 6c36acda..848c60e7 100644
--- a/examples/migrations-demo/flyway-demo/src/main/java/ru/otus/spring/config/AppConfig.java
+++ b/examples/migrations-demo/flyway-demo/src/main/java/ru/otus/spring/config/AppConfig.java
@@ -4,7 +4,7 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.DependsOn;
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
-import javax.persistence.EntityManagerFactory;
+import jakarta.persistence.EntityManagerFactory;
import javax.sql.DataSource;
public class AppConfig {
diff --git a/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/1.0/V1_1__2019_01_11_Add_users_table.sql b/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/1.0/V1_1__2019_01_11_Add_users_table.sql
index 1d12422d..3ab54e0c 100644
--- a/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/1.0/V1_1__2019_01_11_Add_users_table.sql
+++ b/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/1.0/V1_1__2019_01_11_Add_users_table.sql
@@ -1,4 +1,9 @@
--date: 2019-01-11
--author: ydvorzhetskiy
-create table users (id bigserial, login varchar(50), password varchar(50))
\ No newline at end of file
+create table users (
+ id bigserial,
+ login varchar(50),
+ password varchar(50),
+ primary key(id)
+)
\ No newline at end of file
diff --git a/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/2.0/V2_2__2020_05_25_Add_emails_table.sql b/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/2.0/V2_2__2020_05_25_Add_emails_table.sql
index c03d2734..ecf1827b 100644
--- a/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/2.0/V2_2__2020_05_25_Add_emails_table.sql
+++ b/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/2.0/V2_2__2020_05_25_Add_emails_table.sql
@@ -4,5 +4,6 @@
create table emails (
id bigserial,
user_id bigint references users(id) ON DELETE CASCADE,
- email varchar(50)
+ email varchar(50),
+ primary key(id)
)
\ No newline at end of file
diff --git a/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/data/R__0004_Add_courses.sql b/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/data/R__0004_Add_courses.sql
index d8a6eafa..26305d30 100644
--- a/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/data/R__0004_Add_courses.sql
+++ b/examples/migrations-demo/flyway-demo/src/main/resources/db/migration/data/R__0004_Add_courses.sql
@@ -6,5 +6,5 @@ values (1, 'Разработчик Java'),
insert into users_courses (user_id, course_id)
values (1, 1), (1, 2), (1, 3), (1, 4),
- (2, 1), (2, 2), (1, 3),
+ (2, 1), (2, 2), (2, 3),
(3, 3), (3, 4);
\ No newline at end of file
diff --git a/examples/migrations-demo/liquibase-demo/pom.xml b/examples/migrations-demo/liquibase-demo/pom.xml
index 74ef6864..8ebe4db8 100644
--- a/examples/migrations-demo/liquibase-demo/pom.xml
+++ b/examples/migrations-demo/liquibase-demo/pom.xml
@@ -11,12 +11,15 @@
org.springframework.boot
spring-boot-starter-parent
- 2.3.0.RELEASE
+ 3.1.3
+
- 11
- 11
+ 17
+ 17
+ 2.2.220
+ 2.0
@@ -30,6 +33,12 @@
spring-boot-starter-data-jpa
+
+ org.yaml
+ snakeyaml
+ ${snakeyaml.version}
+
+
com.h2database
h2