IGNORE_DUP_KEY = ONの重複挿入時のPKの自動インクリメントなし

entity-framework sqlbulkcopy sql-server

質問

IGNORE_DUP_KEY = ONに設定して、たくさんのデータを挿入しようとすると警告が表示されないようにします。ただし、主キーは重複行ごとに増加するため、相互に重複する行が20個ある場合は、Id 100から120になります。手動で値を設定せずに101で続行する方法はありますか?私はSqlBulkCopyとEntity Frameworkを使用していますが、この問題を回避するSQLクエリには興味がありません(例:NOT EXISTSを使用)。もちろん、レコードがすでに存在するかどうかを確認することはできますが、パフォーマンス上の理由からレコードを使用しないことをお勧めします。

受け入れられた回答

継続的なID値が必要な場合、 IDENTITYはあなたのためではありません。アイデンティティの価値が失われないという保証は全くありません。これが起こるのはシナリオだけではありません。

IDを自分で管理する(シーケンスを使用するなど、バルクロードに統合するのは容易ではありません)、中断のないIDを要求することをあきらめます。



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ