背景:
理由:
別のテストデータベースで見られるようにインデックステーブルにフィールドが「SEQ_NO」の先端は、データベースから同期されたテーブル内のシーケンス番号が自動的に中断され、データが挿入される次回につながる、SQL自動シートは、固有の制約エラーが発生、データがされているシリアル番号を生成します。もちろん、データや人的ミス、操作の誤った削除は、この問題が発生します。
ソリューション:
まず、我々は確認することができますどのようなものをシート(私のテーブルTBL_ACM_CLAIM)の表のシリアル番号:
DUAL SEQ_ACM_CLAIM.NEXTVALからSELECT
値がテーブルSEQ_NO照会値よりも大きい場合、あなたは意志、比較、結果を照会するために、データの比較表を既存の、何が一度に実行するので、インデックス値が+1インクリメントされず、このSQLを実行しないでくださいインデックス値が更新される(通常は1)ステップ100の設定シーケンスは、以下のSQLを実行し
INCREMENT 100によって配列SEQ_ACM_CLAIMをALTER
注:SEQ_ACM_CLAIMはテーブルではなく、インデックス値の現在の値だけ減少ではなく増加させる改変、変更することができない存在です。
ヒント:
すべてのインデックス検索:
USER_SEQUENCESからSELECT *を;
インデックスの削除:
シーケンスSEQ_ACM_CLAIMを落とし、
インデックスを作成します。
SEQ_ACM_CLAIM TBL_ACM_CLAIM(SEQ_NO)ON UNIQUE INDEXを作成します。
要約:
逃げるためにライブラリを削除し、1秒で十分です。