当前位置: 代码迷 >> Sql Server >> 给一个表添一列需要not null
  详细解决方案

给一个表添一列需要not null

热度:49   发布时间:2016-04-24 20:29:56.0
给一个表加一列需要not null
我现在想给一个表加一列,但是这个列不能为null,而且给这个列设上默认值‘’

ALTER TABLE [dbo].[aaa] ADD bbb NVARCHAR(3) NOT NULL
GO
ALTER TABLE [dbo].[aaa] ADD  CONSTRAINT [DF_aaa_bbb]  DEFAULT ('') FOR [bbb]
GO

但是一执行,出现错误,说加一列的话不能设置成not null

我可以把这两句写成一句吗
谢谢了

------解决方案--------------------

alter table aaa add bbb nvarchar(3) not null constraint DF_aaa_bbb default('')

------解决方案--------------------
原来数据表已经有数据了,你直接那样加上不行的。

ALTER TABLE [dbo].[aaa] ADD bbb NVARCHAR(3)
GO

UPDATE [aaa] SET bbb=''
GO

ALTER TABLE [dbo].[aaa] alter column bbb NVARCHAR(3) NOT NULL
GO

ALTER TABLE [dbo].[aaa] ADD  CONSTRAINT [DF_aaa_bbb]  DEFAULT ('') FOR [bbb]
GO
  相关解决方案