GenerationType.Identity не работает после ручной вставки записей из базы данных - PullRequest
0 голосов
/ 24 сентября 2018

Я выполняю простую функцию вставки базы данных, где хочу автоматически увеличивать индекс первичного ключа.

Я использую Spring Boot Hibernate.Он отлично работает, когда я вытер базу данных и вставил ее с помощью Spring следующим образом:

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@JoinColumn(name = "EventID", unique = true)
private int eventId;

Индекс начинается с 1 и работает совершенно нормально.Однако после того, как я вставил некоторые записи вручную в базу данных с помощью MSSQL, я не смог запустить свой код.Вставка записей с использованием Spring больше не работает.

Есть идеи, что пошло не так с моим кодом?Или я должен что-то сделать с настройками базы данных?Мне нужна помощь в этом, но я не могу найти кого-то с такой же проблемой в Интернете.

Ваша помощь очень ценится.

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

Я всегда использую GenerationType.AUTO вместо

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id")
private Long id;
0 голосов
/ 24 сентября 2018

Этот код работает для меня.Я могу вставлять, обновлять и удалять строки в своей базе данных вручную, и индексация по-прежнему работает.

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
private Long id;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...