私たちのチームは、ある組織のために新しいシステムを開発しています。テーブルがありClient
ます:
Id (PK), int, not null
NoClient, int, not null
組織は、多くの場合、顧客をその番号で呼びNoClient
ます。ゆっくりと、古いシステムからのクライアントが新しいシステムに (手動で) 移行されます。
NoClient
自動インクリメント(新しいクライアントの場合|新しいシステムの機能)である必要がありますが、手動入力(既存のクライアントの場合)を許可し、後で衝突を引き起こしません。
自動インクリメント列の観点から見ると、次のようになります。
..., 9998, 9999, (used), 10001, 10002
その問題を解決するために SQL Server 2005 (または Entity Framework) を活用する方法について何か考えはありますか?
これを行うためのより良い方法がない限り、おそらくシード テーブルを作成し、ストアド プロシージャ (ロジックが埋め込まれている) を使用する必要があります...