SQL Serverデータベース内のすべてのテーブルから、すべての既定の制約、チェック制約、一意の制約、主キー、および外部キーをすべて削除したい。からすべての制約名を取得する方法を知っていますsys.objects
が、どのようにALTER TABLE
部品に入力しますか?
好奇心から、そのような要求のコンテキストは何ですか?機能的な依存関係(インデックス付きビュー、FKのカスケードイベント、IGNORE_DUP_KEY = ONのUQ)がどのように対処されるのか疑問に思っています。
—
ソロモンラツキー
@srutzky Stack Overflowで尋ねられましたが、ここでよりクリーンで標準的なバージョンを作成することにしました。とにかく、これは一般的な要求であり、多くの場合、データベースのクリーンアップ(最初からやり直す、誤ってマスターに入れられたオブジェクトのクリーンアップなど)の大きなタスクの一部です。制約を削除してもこれらの機能的な依存関係が影響を受けることはありません。実際、ほとんどの場合、大きな全体像がテーブルを切り捨てたり削除したりしていると思われます。最初に制約をドロップすると、それが可能になります。
—
アーロンバートランド