为了账号安全,请及时绑定邮箱和手机立即绑定

更改列:null到不为null

更改列:null到不为null

慕村225694 2019-11-04 15:26:38
我有一个表,其中包含几个可为空的整数列。由于多种原因,这是不可取的,因此我希望将所有null更新为0,然后将这些列设置为NOT NULL。除了将null更改为之外0,还必须保留数据。我正在寻找将一列(称为)更改为“ ” 的特定SQL语法。假设数据已更新为不包含空值。ColumnAnot null使用SQL Server 2000。
查看完整描述

3 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

首先,使所有当前的NULL值消失:


UPDATE [Table] SET [Column]=0 WHERE [Column] IS NULL

然后,更新表定义以禁止使用NULL:


ALTER TABLE [Table] ALTER COLUMN [Column] INTEGER NOT NULL


查看完整回答
反对 回复 2019-11-04
?
MM们

TA贡献1886条经验 获得超2个赞

我遇到了同样的问题,但是该字段曾经默认设置为null,现在我想将其默认设置为0。这需要在mdb的解决方案之后再添加一行:


ALTER TABLE [Table] ADD CONSTRAINT [Constraint] DEFAULT 0 FOR [Column];


查看完整回答
反对 回复 2019-11-04
?
慕后森

TA贡献1802条经验 获得超5个赞

您将必须分两个步骤进行操作:


更新表,以使该列中没有空值。

UPDATE MyTable SET MyNullableColumn = 0

WHERE MyNullableColumn IS NULL

更改表以更改列的属性

ALTER TABLE MyTable

ALTER COLUMN MyNullableColumn MyNullableColumnDatatype NOT NULL


查看完整回答
反对 回复 2019-11-04
  • 3 回答
  • 0 关注
  • 596 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信