0

SQL AZURE を使用していますが、問題があります。テーブルにidentity(1,1)であるid_pkがあります。このテーブルにデータを保存し始めましたが、突然、自分の pk が 1、2、3 ではないことに気付きました... たとえば、38 から 1038 に跳ね上がりました。その後もデータを挿入し続け、それは正常でしたが、突然、再び 1043 から 2039 にジャンプしました。

なぜそれが起こっているのですか?そしてそれを修正する方法は?

それは 1 つのテーブルだけでなく、そのうち 3 つのテーブルでも発生しました (少なくとも 3 つのテーブルで気づいたことがあります)。

4

1 に答える 1

0

短い答え - 私はここで何かが間違っているとは思いません。いくつかの説明を推測できます (挿入と削除は私の考えですが、わかりません) が、何も変わりません。はい、ID フィールドは非常に急速にインクリメントされていますが、ID フィールドはデータベースが気にする舞台裏の番号であり、それ以外はあまり重要ではありません。その観点から、ノー・ハーム・ノー・ファウルをお勧めします。続けてください。

これに対処して ID フィールドを「リセット」したい場合は、ID フィールドを再度 1,1 に設定した同一のテーブルを作成します。古いテーブルからすべての行を挿入し、それらを新しいテーブルに配置します... ID は再び連続するはずです。その ID フィールドに対する外部キーを持つ他のテーブルは、その関係を失う可能性があることに注意してください。私はこれを最後の(非常に最後の)手段としてのみ試みます。

于 2013-10-10T21:40:15.440 に答える