允许空值的SQL更新

问题描述:

我有MSSQL中有一列的值不能为null的表。但有更新 操作,我想将该列设置为空,当我更新其他列。有没有这样的方式来实现这一点,或者我应该重新创建表,允许列取空值。允许空值的SQL更新

您应该允许空值的列:alter table T1 alter column C1 int null

您将需要更新架构。没有其他办法。这是限制的原因。如果数据不会丢失,则可以执行更改以避免完全重新创建表,即

使用ALTER TABLE语句允许空值。

看到http://msdn.microsoft.com/en-us/library/ms190273.aspx

你也许可以做这样的事情:

"ALTER TABLE table ADD COLUMN newcolumn VARCHAR(255)" 
    "UPDATE TABLE table SET newcolumn = oldcolumn" 
    "ALTER TABLE table DROP COLUMN oldcolumn" 
    "ALTER TABLE table ADD COLUMN oldcolumn VARCHAR(255)" 
    "UPDATE TABLE table SET oldcolumn = newcolumn"