SQL Server 2012 における予期しない ID 増加のギャップについて
SQL Server 2012 ではシーケンスが導入され、ID インクリメントの機能が変更されました。古い ID メカニズムとは異なり、シーケンスは別個のデータベース オブジェクトから増分値を管理および割り当てます。
これにより、特に高負荷下での同時実行性やパフォーマンスの向上などの利点が得られます。ただし、シーケンスでは複数の値が事前に割り当てられるため、ID 値が一見ランダムにジャンプする可能性もあります。
増分ギャップに対処するためのソリューション
この動作を管理するには、いくつかの戦略が役立ちます。
NO CACHE
オプションを使用してシーケンスを作成すると、挿入ごとに 1 つの ID 値のみが強制的に生成されます。これにより、従来の順次増分動作が復元されます。アイデンティティ値の割り当てに影響を与える要因
これらのギャップはエラーではないことを覚えておいてください。それらは設計変更です。 一度に割り当てられる ID 値の数には、いくつかの要因が影響します。
シーケンスの仕組みを理解し、推奨される解決策を使用することにより、ID 増分の増加を効果的に最小限に抑え、SQL Server 2012 データベースで望ましい動作を実現できます。
以上がSQL Server 2012 でランダムな ID 増加ジャンプが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。