1. エラー報告:
java.sql.SQLIntegrityConstraintViolationException ORA-00001 一意制約違反
2. エラーの原因を確認して解決します
1. エラー SQL ステートメントを確認し、データベースを比較すると、主キー ID が重複していることがわかりました (ここでは ID は自己増加型で、データベースは orcl です) 2. 主キー ID 自己増加エラーを解決するには、次の手順を実行します
。以下の通り
--首先根据出错的SQL语句定位到需要修改的数据表
-- SEQ开头为序列 ; SEQ_GEN_TABLE_COLUMN序列 GEN_TABLE_COLUMN为对应的数据表
-- 第一步: 查询字段对应的序列(sequence)的下一次值是多少
SELECT SEQ_GEN_TABLE_COLUMN.NEXTVAL FROM dual; -- 我这里查出 596
-- 第二步:查询数据表中对应字段的最大值
select max(t.COLUMN_ID) from GEN_TABLE_COLUMN t;--1379
-- 第三步:修改序列值步进大小,更新序列值步进值(自己定义即可,需要超过数据库表中对应的最大值); 596+步长>1379
alter sequence SEQ_GEN_TABLE_COLUMN increment by 800;
-- 第四步:按照步进值将序列值新增,并得到下一个序列值
select SEQ_GEN_TABLE_COLUMN .nextval from dual;
-- 第五步:恢复序列值步进大小为1
alter sequence SEQ_GEN_TABLE_COLUMN increment by 1;