行削除後の SQL Server ID シードのリセット
自動インクリメント主キーを持つ SQL Server テーブルは、新しいレコードごとに増加する ID シード (ID 列の初期値) を利用します。 これにより、ID 列内の一意性と昇順が保証されます。
ただし、レコードを削除すると、この順序が崩れ、自動生成されたインデックス列の位置がずれる可能性があります。これは、ID 列が他の場所で外部キーとして機能する場合に特に問題になります。
削除後のアイデンティティ シードの復元は、DBCC CHECKIDENT
コマンドを使用して実行します。
このコマンドは、指定されたテーブルの ID カウンターをリセットします。 コマンドの構文は次のとおりです:
<code class="language-sql">DBCC CHECKIDENT (table_name [, { NORESEED | { RESEED [, new_reseed_value ]}}]) [ WITH NO_INFOMSGS ]</code>
たとえば、TestTable
テーブルの ID 列を 0 にリセットします:
<code class="language-sql">DBCC CHECKIDENT ('[TestTable]', RESEED, 0); GO</code>
重要な注意: 以前の Azure SQL Database バージョンでは以前はサポートされていませんでしたが、DBCC CHECKIDENT
は現在完全に機能します。
ID シードのリセットに関する問題が解決しない場合は、Microsoft サポートへの連絡が必要になる場合があります。
以上が行を削除した後に SQL Server ID シードをリセットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。