SQL - ID列を自動増分せずに行を挿入するにはどうすればいいですか? 質問する

SQL - ID列を自動増分せずに行を挿入するにはどうすればいいですか? 質問する

強制的に自動増分する列を持つテーブルがあり、この列はアプリ全体を通じて保持される非常に貴重な ID です。申し訳ありませんが、これを自動増分列にしたのは私の開発の不備でした。

問題はここにあります。すでに作成されてテーブルから削除された列の ID をこのテーブルに挿入する必要があります。この ID を復活させてテーブルに戻すようなものです。

では、列の増分をオフにせずにプログラムでこれを行うにはどうすればよいのでしょうか。間違っていたら訂正してください。プログラムでオフにすると、0 または 1 から再開されますが、これは避けたいのです...

ベストアンサー1

Set Identity_Insert [TableName] OnMicrosoft SQL Server を使用している場合は、次のようにステートメントを発行して autoIncrementing 機能を「オフ」にすることができます。

  Set Identity_Insert [TableName] On
  -- --------------------------------------------
  Insert TableName (pkCol, [OtherColumns])
  Values(pkValue, [OtherValues])
  -- ---- Don't forget to turn it back off ------
  Set Identity_Insert [TableName] Off

おすすめ記事