テーブルに挿入するストアドプロシージャがあります(主キーではないID列があります。PKは最初に日付/時刻を使用して挿入され、一意の値が生成されます)。
次に、SCOPEIDENTITY()を使用して値を挿入します。次に、この値に基づいて主キーフィールド値を生成するロジックがあり、これがテーブルに更新されます。
状況によっては、ストアドプロシージャが複数のプロセスによって同時に呼び出され、「PRIMARYKEY制約の違反...」エラーが発生する場合があります。
これは、ID列が複数のレコードに同じ番号を挿入できることを示しているように見えます。
最初の質問-これはどのように可能ですか?
2番目の質問-それを停止する方法...現在エラー処理がないので、いくつかのtry / catchロジックを追加します-しかし、適切に対処するために問題を完全に理解したいと思います