Oracleシーケンスは、ターゲットテーブルに連続した(1ずつインクリメントする)IDを生成するためのものではありません。これは、非常に高速でマルチスレッドアクセスを可能にするように設計されているためです。つまり、内部では、シーケンスIDがさまざまなトランザクションにキャッシュされます。
NOCACHE
でシーケンスを宣言することで、問題を軽減できる可能性があります。 、ただし、何らかの理由でトランザクションがロールバックされた場合にIDがスキップされないという保証はありません。
いつものように、Tom Kyte は説明しますこれ 詳細。