同一のスキーマを持つ 2 つの SQL Server 2000 データベースがあります。
特定のテーブルの行のサブセットをデータベース A からデータベース B に移動する必要があります。また、関連するすべての行を他のテーブルからデータベース B にも移動する必要があります。
これは簡単な例です
各 DB に、Authors、Books、Awards、Sales というテーブルがあるとします。
これらのテーブルのそれぞれに、PK である ID 列があるとします。これらの列の名前は、AuthorID、BookID、AwardID、SaleID です。
「Stephen King」をデータベース A の Authors テーブルからデータベース B に移動する必要があります。データベース A の Stephen King レコードの AuthorID が 12 であるとします。また、Books テーブルのすべての行を FK で移動する必要があります。 AuthorID は 12 です。 award テーブルと sales テーブルと同じです。
「SET IDENTITY_INSERT」コマンドを使用してこれを処理するために、データベース B がまったく新しいときに以前にコードを書きました。そのため、Stephen King は各テーブルで同じ AuthorID を持つことになりました。
現在の問題は、スタッフがデータベース B に新しいレコードを追加するのに忙しく、PK 競合を起こさずにデータベース A からデータベース B にレコードを単純に移行できないことです。データベース B が移行されたレコードに新しい PK 値を割り当て、それらを追跡する以外に選択肢はありません。これにより、関連するレコードが取得されたときに適切な FK が使用されます。
この単純化された例では、コーディングする必要がある 4 つのテーブルがあります。
私の実際の例では、46 個のテーブルがあります。
これを手作業でコーディングするのは楽しみではありません。
このプロセスを簡単にするために購入できる既存のツールはありますか?