Таблица: "ID" INTEGER DEFAULT nextval('zakazchik_id_seq'::regclass) NOT NULL,
Сущность:
@Id
@Column(name = "\"ID\"", unique = true)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "\"zakazchik_seq_gen\"")
@SequenceGenerator(name = "\"zakazchik_seq_gen\"", sequenceName = "\"zakazchik_id_seq\"")
private Integer id;
При вставке новой строки пишет:
ERROR SqlExceptionHelper:131 - ERROR: duplicate key value violates unique
constraint "zakazchik_new_new1_new_pk_zakaz"
Подробности: Key ("ID")=(730) already exists.
Всё правильно, 730 id уже занят... и так до 743.
Через hibernate только сейчас начал работать, до этого всё было через jdbc с жутким собиратором sql-запросов.
Почему он начал назначать старые id начиная с 700-го, я же ему указал zakazchik_id_seq
?
необходимо установить
@Column(name = "ID", unique = true, updatable = false, nullable = false)
@SequenceGenerator(name = "zakazchik_seq_gen", sequenceName = "zakazchik_id_seq", allocationSize=1)
По-умолчанию Hibernate использует алгоритм HiLo и резервирует 50 значений.
Вот описание на хабре
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
При запуске любой процедуры Maven в IntelliJ IDEA (clean или build) Maven ругается на мой файл settingxml: