首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java.sql.SQLIntegrityConstraintViolationException: ORA-00001

java.sql.SQLIntegrityConstraintViolationException: ORA-00001
EN

Stack Overflow用户
提问于 2021-02-25 15:12:11
回答 1查看 856关注 0票数 0

下面是我的java代码的一部分,我们使用它将记录插入到表中。

代码语言:javascript
复制
public void insertitem(long item_id, long user_id) throws SQLException
   {
     PreparedStatement pstmt = null;
      StringBuffer sqlB = new StringBuffer();


      sqlB.append("INSERT INTO ITEMS ");
      sqlB.append("(AIR_ID, ACT_ITEM_ID, USER_ID) ");
      sqlB.append("  VALUES ");
      sqlB.append("(ITEMS_SEQ.nextval,?,?) ");
      try
      {
         pstmt = conn.prepareStatement(sqlB.toString());
         int i=1;
         pstmt.setLong(i, item_id);i++;
         pstmt.setLong(i, user_id);i++;
         pstmt.executeUpdate();

      }
      catch(SQLException e)
      {
         throw new SQLException(e.getMessage());
      }
}

即使使用SEQ.nextval,它仍然抛出以下错误:

java.sql.SQLIntegrityConstraintViolationException:

ORA-00001:违反了唯一约束(ACTTRK.AIR_ID_PK)。**

我如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-25 15:37:19

设置当前序列值

代码语言:javascript
复制
alter sequence ITEMS_SEQ restart start with <your_max_value+1>;  

如果这不起作用

代码语言:javascript
复制
ALTER SEQUENCE ITEMS_SEQ INCREMENT BY <your_max_value>;

select ITEMS_SEQ.nextval from dual;

ALTER SEQUENCE ITEMS_SEQ INCREMENT BY 1;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66371255

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档