2010-11-30 2 views
1

以前はNULLではなかったdbテーブルを持っています(すべてのレコードに値があったため)。私は今それをnullableにする必要がありますのでオプションですが、SQLを使用してテーブルを削除して再作成することはできません。SQL Serverのフィールドをnullでないnullに変換できない

もっと厳しいモデル(より厳しいものではない)に向かうにつれて、データに影響を与えないのであれば、なぜこの制限がありますか?

+1

スクリプトを使用して、またはManagement Studioのテーブルデザイナでこれを実行しようとしていますか?テーブルデザイナー(少なくとも2008年)はこれをやらせませんが、スクリプトを使用することは完全に可能です。 –

+0

@ Jon Seigel - なぜテーブルデザイナーがあなたをブロックするのですか? – leora

+0

私は分かりません。私にはバグのようだ。 –

答えて

1
ALTER TABLE table_name ALTER COLUMN column_name data_type NULL 
0

次のことが可能です。

create table test (id int not null) 
insert test values (1), (2), (3), (4), (5) 
insert test values (null) -- fails 
alter table test alter column id int null 
insert test values (null) -- succeeds 
select * from test 
2

あなたがあなたをブロックから、テーブルデザイナーを停止することができます:[ツール|オプション|デザイナー|テーブルとデータベースデザイナ]> [テーブルの再作成が必要な変更を保存しない]をオフにします。

関連する問題