我有一个以前不为null的db表(因此每个记录都有一个值)。我现在想让它可以为空,因此它是可选的,但似乎SQL不会让你这样做而不删除并重新创建表。
如果没有数据会受到影响,为什么会有这个限制,因为我要使用更宽松的模型(不是更严格的模型)?
答案 0 :(得分:2)
您可以阻止表设计器阻止您:工具|选项|设计师|表和数据库设计者>取消选中“禁止保存需要重新创建表的更改”。
答案 1 :(得分:1)
ALTER TABLE table_name ALTER COLUMN column_name data_type NULL
答案 2 :(得分: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