即使表ID是用auto_increment设置的,“提供的类型错误的ID”?

时间:2018-12-02 03:35:21

标签: sql hibernate jpa h2

我正在创建用于单元测试的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。 我不知道在哪里或什么地方尝试为id插入整数,因为我认为它将使用auto_increment生成,并且我的插入语句中未包含整数。这是怎么回事?

0 个答案:

没有答案