欢迎使用普元产品知识库,本知识库包含普元应用开发平台EOSPlatform,流程平台BPS,企业服务总线ESB,微服务平台Microservice,运维管理平台Devops,数据集成平台DI

页面树结构

欢迎使用普元文档库

Skip to end of metadata
Go to start of metadata

【问题】

往cap_user表中插入数据报错:

[default][2015-07-30 12:09:43,606][ERROR][com.primeton.common.connection.impl.synchronization.TraceLoggerStatementSynchronization:49] Sql[insert into cap_user (TENANT_ID, USER_ID, PASSWORD, USER_NAME, AUTHMODE, STATUS, UNLOCKTIME, LASTLOGIN, STARTDATE, ENDDATE, EMAIL, CREATEUSER, CREATETIME, OPERATOR_ID) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)] execute error.
java.sql.BatchUpdateException: ORA-00001: unique constraint (YXBI.SYS_C0012180) violated
        at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:343)
        at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10698)
        at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
        at com.primeton.ext.infra.connection.StatementWrapper.executeBatch(StatementWrapper.java:210)
        at com.primeton.das.entity.impl.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:49)
        at com.primeton.das.entity.impl.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:254)
        at com.primeton.das.entity.impl.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
        at com.primeton.das.entity.impl.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
        at com.primeton.das.entity.impl.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
        at com.primeton.das.entity.impl.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
        at com.primeton.das.entity.impl.hibernate.impl.SessionImpl.flush(SessionImpl.java:1021)
        at com.primeton.das.entity.impl.DASSessionImpl.insertEntity(DASSessionImpl.java:120)
        at com.primeton.spring.support.DatabaseUtil.insertEntity(DatabaseUtil.java:62)
        at com.eos.spring.DASTemplate.insertEntity(DASTemplate.java:65)
        at org.gocom.components.coframe.rights.user.CapUserService.addCapUser(CapUserService.java:45)
        at org.gocom.components.coframe.rights.user.CapUserService$$FastClassByCGLIB$$2eae770a.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)

【解答】

检查eos_unique_table表中cap_user的code值是否小于cap_user表中主键的最大值,若是,改成大于主键的最大值,重启server

提醒:项目中的数据是否来源于多个途径,如:代码插入、人工导入等,最好统一来源,以免出现主键冲突情况