SQL Server Management Studio(SSMS)でテーブルの再作成を必要とする変更を保存できるようにする

SQL Server Management Studio(SSMS)のテーブルデザイナーでテーブルの定義を変更して保存しようとすると、以下のメッセージが表示される場合があります。

「変更の保存が許可されていません。行った変更には、次のテーブルを削除して再作成することが必要になります。再作成できないテーブルに変更を行ったか、テーブルの再作成を必要とする変更を保存できないようにするオプションが有効になっています。」

SQL Server Management Studioのテーブルデザイナーでテーブルの再作成を必要とする変更が保存できないことを知らせるメッセージボックス

これはメッセージにある通り、テーブルを再作成しないといけない変更を行った時に表示されます。

SQL Server Management Studioでは、デフォルト(初期値)でテーブルの再作成を必要とするような変更はできないように設定されています。

上記のメッセージは、テーブルに以下の変更を行った際に表示されます。

  • 列の「NULL を許可」を変更
  • テーブル内の列の順序を変更
  • 列のデータ型を変更
  • 新しい列を挿入(末尾以外に追加)
  • テーブルの主キー(プライマリキー)を設定(変更)

これは、「テーブルの再作成を必要とする変更を保存できないようにする」 オプションが有効になっているためです。
このオプションは変更することが可能なので、テーブルデザイナーで頻繁にテーブルの定義を変更する場合は変更しておくことをおすすめします。

テーブルの再作成を必要とする変更を保存できるようにする

「テーブルの再作成を必要とする変更を保存できるようにする」の設定は、メニューバーの「ツール」メニューにある「オプション」から行います。

SQL Server Management Studioのツールメニューのオプションメニュー

「オプション」メニューをクリックすると以下の画面が表示されます。

SQL Server Management Studioのツール>オプションから起動するダイアログボックス

左ペインのリストにある「デザイナー」をクリックして選択します。

SQL Server Management Studioのツール>オプションから起動するダイアログボックスでデザイナーを選択

「デザイナー」を選択すると右ペインにデザイナーに関する設定が表示されますので、「テーブル オプション」にある「テーブルの再作成を必要とする変更を保存できないようにする」のチェックボックスのチェックをはずしてOFFにします。

SQL Server Management Studioで「テーブルの再作成を必要とする変更を保存できないようにする」 のオプションをOFFにする

チェックをはずしたら「OK」ボタンをクリックします。

SQL Server Management Studioで「テーブルの再作成を必要とする変更を保存できないようにする」 のオプションをOFFにしてOKボタンをクリック

オプションが変更できたら、テーブルエディターで列の挿入やデータ型の変更を行って保存を行ってみてください。
自由にテーブルの列定義が変更できるようになっています。