Добрый день!
Приведу простой пример:
Используемая БД - PostgresSQL.
Используемый стек: Spring Boot + Hibernate + FlyWay
@Data
@Entity
@Table(name = "books")
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long bookId;
//....
}
Вот, генерируемая hibernate'ом таблица
create table if not exists books
(
book_id bigserial not null
constraint books_pkey
primary key,
language_id bigint
constraint fksp7ty25kndaxyfrgkrloo1dd8
references author
);
Пример sql запросов для импорта:
INSERT INTO "public"."books" ("book_id", "author_id") VALUES (1, 2);
После миграции данных через flyway sequence не обновился.
Т.е. у меня должно быть более 200 объектов, а sequence индекс показывает 0.
SELECT last_value FROM books_book_id_seq;
last_value 0
При этом например, для другой сущности, которая была инициализирована java скриптом индекс отображается корректно.
Проблема чем-то похожа на эту:
https://stackoverflow.com/questions/35011338/hiber...
И зачем hibernate генерирует sequences, если GenerationType.IDENTITY ?
В чем заключается моя ошибка? Заранее благодарю за ответы!