关于oracle表已设置主键自增仍报违反唯一约束问题

   今天在写一个表维护页面时,表里已设置sequence 但是保存时仍报违反主键唯一约束的错误,经过排查,原来在表创建好的时候,由数据库直接导入了部分数据,导致了sequence的开始自增序列不为当前ID最大值,故要从新设置sequence的自增起始值,方法如下:

第一步:删除原有的sequence,如下:

DROP SEQUENCE seq_sequencename;

第二步: 重新创建sequence并设置其自增开始值,如下:

CREATE SEQUENCE seq_sequencename
            INCREMENT BY 1  -- 每次加几个  
            START WITH 73      -- 从73开始计数  
            NOMAXVALUE        -- 不设置最大值  
            NOCYCLE               -- 一直累加,不循环  
            CACHE 10;

至此,问题结局,共勉……

你可能感兴趣的:(oracle)