自動インクリメントする主キーを作成しました。
- 2つの行を追加しました:
ID=1, ID=2
- これらの2つの行を削除しました。
- 新しい行を追加しましたが、新しい行のIDは次のとおりです。
ID=3
自動インクリメントを1にリセットまたは再開するにはどうすればよいですか?
自動インクリメントする主キーを作成しました。
ID=1, ID=2
ID=3
自動インクリメントを1にリセットまたは再開するにはどうすればよいですか?
DBCC CHECKIDENT
次のコマンドを使用する場合:
DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1);
ただし、注意して使用してください。- これは を 1 にリセットするだけですIDENTITY
- したがって、次の挿入は値 1、次に 2、そして 3 を取得します --> そして、ここで既存の値 3 と衝突します!
IDENTITY
連続した順序で数字を並べるだけです-競合がないことを確認することは決してありません! すでに値がある場合は、低い値に再シードしないでください。
私はSQL Server 2012を使用しており、次の挿入時に DBCC CHECKIDENT ("YourTableNameHere", RESEED, 1)
値が発生します。2
したがって、SQL Server 2012の場合は、次のレコード挿入の値を取得するように変更1
します。0
1
DBCC CHECKIDENT ("YourTableNameHere", RESEED, 0); -- value will be 1 for the next record insert