web-dev-qa-db-ja.com

テーブルを変更できません(Microsoft SQL Server Management Studio 2008を使用)

2つのテーブルと、他の2つの外部キーを使用して別の1つのテーブルを作成します。

表3にいくつか変更を加えたいと思いました。

フィールドを更新しようとすると、「変更の保存は許可されていません。行った変更では、次のテーブルを削除して再作成する必要があります。」というエラーが表示されます。

これらの2つの関係を削除しましたが、依存関係を見ると、テーブルがまだそれらの2つに依存しており、変更を加えることができません。

私に何ができる?

16
gigi

[ツール]-> [オプション]-> [デザイナー]-> [テーブルとデータベースのデザイナー]に移動し、[テーブルの再作成が必要な変更を保存しない]をオフにすることで、テーブルの削除が必要な変更の保存を有効にすることもできます。

ただし、これには注意してください。テーブルを再作成できずにドロップすることがあり、テーブルにあったすべてのデータが失われます。

54
Doggett

Microsoft SQL Server Management Studio 2012を使用すると、同じメッセージが表示されます。スクリプト機能を使用して変更を行いました。これは、「セーフ」モードでのみデザイナーを使用したい場合に、かなり良い回避策と見なすことができます。特に、外部キーの作成に関連するGUIは、私の意見では最善ではありません。 fkを追加するためにスクリプト(テーブルの変更)を使用する場合、このGUI機能を使用するよりも高速です。 nullの前に「not」を追加/書き込む場合、それは難しい問題ではありません。 (列の「Nullを許可」を削除すると、デザイナを使用するときに「変更の保存は許可されません」という意味になります。)

1
mnemonic