tblFooという名前のテーブルがあり、tblFooBarという名前を付けたい場合、SQLコマンドまたはこれを実行できる何かを見つけたいです。ただし、主キーも変更したいです。たとえば、現在は次のようになっています。
CONSTRAINT [PK_tblFoo] PRIMARY KEY CLUSTERED
そして、名前を変更して次のように変更したい:
CONSTRAINT [PK_tblFooBar] PRIMARY KEY CLUSTERED
次に、この変更を再帰的に調べて、外部キー関係を持つすべてのテーブルにカスケードします。これから:
CHECK ADD CONSTRAINT [FK_tblContent_tblFoo] FOREIGN KEY([fooID])
これに:
CHECK ADD CONSTRAINT [FK_tblContent_tblFooBar] FOREIGN KEY([fooID])
当然のことながら、a) エラーが発生しやすいプロセスであり、b) スケーリングしないため、これをすべて手動で実行しないようにしています。