«Предоставлен идентификатор неправильного типа», даже если идентификатор таблицы установлен с помощью auto_increment? - PullRequest
0 голосов
/ 02 декабря 2018

Я создаю таблицу h2 для модульного тестирования, таблица создается с помощью этого sql:

CREATE TABLE IF NOT EXISTS RULE_LIST
(
   RULE_LIST_ID BIGINT AUTO_INCREMENT primary key,
   RULE_TYP_CDE varchar(10) NOT NULL,
   RULE_GROUP varchar(50),
   RULE_NM varchar(128),
);

Затем я пытаюсь вставить строку с:

DELETE FROM RULE_LIST;
INSERT INTO RULE_LIST(
  RULE_TYP_CDE,
  RULE_GROUP,
  RULE_NM
)
VALUES (
  'testType',
  'testGroup',
  'testName'
);

Но эторезультаты в исключении: java.lang.IllegalArgumentException: Provided id of the wrong type for class [associated java entity]. Expected: class java.lang.Long, got class java.lang.Integer.Я не знаю, где или что пытается вставить целое число для идентификатора, так как я думал, что оно будет сгенерировано с помощью auto_increment, и я не включил целое число в свой оператор вставки.Что здесь происходит?

...