0

MS SQL Server 2005 で、置き換えたいテーブルがあります。他の多くのテーブルには、このテーブルへの外部キー参照があります。これらすべての参照を古いテーブルから新しいテーブルに単純にロールオーバーするために実行できるスクリプトはありますか?

それとも、これらの各外部キーを具体的に削除して、それぞれに新しいキーを作成する必要がありますか?

4

2 に答える 2

1

新しいテーブル用にそれらを削除して再作成する方が安全です。

于 2009-01-15T18:38:41.247 に答える
1

または、置き換える古いテーブルにあったものと同じ主キーを新しいテーブルに再利用できますか? その後、FK を更新する必要はまったくありません。

主キーが「Identity」列を自動インクリメントしている場合は、「Set Identity_Insert On」を使用して、明示的な値 (古いテーブルの pk) を使用して新しいテーブルの ID 列に新しいレコードを挿入できます。完了したら、Set Identity_Insert Off を実行し、オフにして実行します。

于 2009-01-15T18:41:33.783 に答える