【 使用环境 】测试环境
【 OB or 其他组件 】OB
【 使用版本 】OceanBase_CE-v4.1.0.0
【问题描述】用hibernate5进行连接,saveOrUpdate接口返回异常。异常信息如下:
Caused by: org.hibernate.jdbc.BatchedTooManyRowsAffectedException: Batch update returned unexpected row count from update [0]; actual row count: 2; expected: 1。该表使用了触发器向另一表进行数据同步。
【问题现象及影响】导致数据无法正常新建和更新。
【附件】
CREATE TABLE a_user
(
ID_
int(11) NOT NULL AUTO_INCREMENT,
ORG_ID_
int(11) DEFAULT NULL,
REALNAME_
varchar(20) DEFAULT NULL,
PASSWORD_
varchar(32) DEFAULT NULL,
STATUS_
char(1) DEFAULT NULL,
PRIMARY KEY (ID_
)
);
CREATE TABLE b_user
(
ID_
varchar(64) NOT NULL,
REV_
int(11) DEFAULT NULL,
FIRST_
varchar(255) DEFAULT NULL,
LAST_
varchar(255) DEFAULT NULL,
EMAIL_
varchar(255) DEFAULT NULL,
PWD_
varchar(255) DEFAULT NULL,
PICTURE_ID_
varchar(64) DEFAULT NULL,
PRIMARY KEY (ID_
)
);
DELIMITER $$
CREATE TRIGGER TG_INSERT_A_USER AFTER INSERT ON a_user
FOR EACH ROW
BEGIN
INSERT INTO b_user (id_, rev_, first_, pwd_) SELECT new.id_, 1, new.realname_, new.password_;
END;$$
insert into a_user(org_id_,realname_,password_) values(1,‘test’,‘123’);