2009/04/29

[SQL]キー制約を削除する(キー制約名を取得して)

キー制約名の取得はこちら↓
[SQL]主キー(PrimaryKey)制約名を取得する

キーを追加したり変更したりする必要がある場合、キー制約名を取得してそのキー制約を削除したい、というケースがあります。

しかし、キーを削除する際は、キー制約名として変数を指定することはできません。
ALTER TABLE [dbo].[HogeTable] DROP CONSTRAINT @KeyName
⇒ 通らない

SQL文を生成して実行してあげればOK。
if (@KeyName <> '')
    EXEC('ALTER TABLE [dbo].[HogeTable] DROP CONSTRAINT ' + @KeyName)


達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)SQLパズル 第2版 プログラミングが変わる書き方/考え方プログラマのためのSQL 第2版SQL Hacks ―データベースを自由自在に操るテクニック

0 件のコメント:

コメントを投稿