ORA-00001: 違反唯一約束條件



ORA-00001: 違反唯一約束條件 (xxxx) xxxx為你的報錯的約束值  

 

不說別的,直接照着下面寫就完事

_seq千萬別忘了

解決方法:

第一步:查詢違反約束的序列
select a.constraint_name,a.constraint_type,b.column_name,b.table_name
from user_constraints a inner join user_cons_columns b on a.table_name=b.table_name
where a.constraint_name='xxxx'

第二步:查詢序列的下一次值是多少
select xxxx_seq.nextval from dual;

第三步:查詢序列中最大值
select max(這個值是你的表的主鍵值,一般為id,有的公司會用其它的比如rid) from xxxx

第四步:修改序列值大小 加1000 --修改步進,例如沒有修改前的序列值為20000,執行此條會將20000+1000,此時序列開始值為21000
alter sequence xxxx_seq increment by 1000;

第五步:驗證序列是否修改成功
select xxxx_seq.nextval from dual;

第六步:調整步進 -- 修改步進,例如沒有修改前的序列值為20000,執行此條會將20000+1,此時序列開始值為20001,
alter sequence xxxx_seq increment by 1;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM